- Electron version: 1.4.3
- Operating system: MacOS 10.11.6

When setCertificateVerifyProc is used, Electron will crash as soon as the callback method is called. Crash log is attached and I've created a very simple project to demonstrate how this can be reproduced: https://github.com/gregnolle/electron-cert-verify-demo

[Electron_2016-10-15-120129_Gregs-iMac.crash.txt](https://github.com/electron/electron/files/531093/Electron_2016-10-15-120129_Gregs-iMac.crash.txt)

atom/browser/atom_browser_context.cc
job_factory->SetProtocolHandler(
      url::kWssScheme,
      base::WrapUnique(new HttpProtocolHandler(url::kWssScheme)));
  auto host_resolver =
      url_request_context_getter()->GetURLRequestContext()->host_resolver();
  job_factory->SetProtocolHandler(
      url::kFtpScheme,
      base::WrapUnique(new net::FtpProtocolHandler(
          new net::FtpNetworkLayer(host_resolver))));
  return std::move(job_factory);
}
net::HttpCache::BackendFactory*
AtomBrowserContext::CreateHttpCacheBackendFactory(
    const base::FilePath& base_path) {
  base::CommandLine* command_line = base::CommandLine::ForCurrentProcess();
  if (!use_cache_ || command_line->HasSwitch(switches::kDisableHttpCache))
    return new NoCacheBackend;
  else
    return brightray::BrowserContext::CreateHttpCacheBackendFactory(base_path);
}
content::DownloadManagerDelegate*
AtomBrowserContext::GetDownloadManagerDelegate() {
  if (!download_manager_delegate_.get()) {
    auto download_manager = content::BrowserContext::GetDownloadManager(this);
    download_manager_delegate_.reset(
        new AtomDownloadManagerDelegate(download_manager));
  }
  return download_manager_delegate_.get();
}
content::BrowserPluginGuestManager* AtomBrowserContext::GetGuestManager() {