* **Electron Version** (output of `node_modules/.bin/electron --version`):
  * 3.0.6
* **Operating System** (Platform and Version):
  * macOS 10.14

### Expected Behavior
a `new-window` event fires

### Actual behavior
a `did-fail-load` fires with errorCode -3

### To Reproduce
```sh
$ git clone git@github.com:chrismohr/no-new-window.git -b master
$ cd no-new-window/
$ npm i && npm start
```

atom/browser/atom_browser_client.cc
content::WebContents* web_contents,
    int cert_error,
    const net::SSLInfo& ssl_info,
    const GURL& request_url,
    bool is_main_frame_request,
    bool strict_enforcement,
    bool expired_previous_decision,
    const base::Callback<void(content::CertificateRequestResultType)>&
        callback) {
  if (delegate_) {
    delegate_->AllowCertificateError(
        web_contents, cert_error, ssl_info, request_url, is_main_frame_request,
        strict_enforcement, expired_previous_decision, callback);
  }
}
void AtomBrowserClient::SelectClientCertificate(
    content::WebContents* web_contents,
    net::SSLCertRequestInfo* cert_request_info,
    net::ClientCertIdentityList client_certs,
    std::unique_ptr<content::ClientCertificateDelegate> delegate) {
  if (!client_certs.empty() && delegate_) {
    delegate_->SelectClientCertificate(web_contents, cert_request_info,
                                       std::move(client_certs),
                                       std::move(delegate));
  }
}
void AtomBrowserClient::ResourceDispatcherHostCreated() {