* Electron version: 1.6.1
* Operating system: macOS 10.12.3, Windows 7 64bit

### Expected behavior

Should emit an error on the request object.

### Actual behavior

<img width="420" alt="image" src="https://cloud.githubusercontent.com/assets/99662/23713890/4e9b8f52-041f-11e7-9dfb-e8408bb58670.png">

An uncatchable error happens.

### How to reproduce
```bash
git clone https://github.com/arantes555/electron-net-encoding-testcase.git
cd electron-net-encoding-testcase
npm install
npm start
```

atom/browser/net/atom_url_request.cc
DCHECK(!request_context_getter_);
  DCHECK(!request_);
}
scoped_refptr<AtomURLRequest> AtomURLRequest::Create(
    AtomBrowserContext* browser_context,
    const std::string& method,
    const std::string& url,
    api::URLRequest* delegate) {
  DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
  DCHECK(browser_context);
  DCHECK(!url.empty());
  DCHECK(delegate);
  if (!browser_context || url.empty() || !delegate) {
    return nullptr;
  }
  auto request_context_getter = browser_context->url_request_context_getter();
  DCHECK(request_context_getter);
  if (!request_context_getter) {
    return nullptr;
  }
  scoped_refptr<AtomURLRequest> atom_url_request(new AtomURLRequest(delegate));
  if (content::BrowserThread::PostTask(
          content::BrowserThread::IO, FROM_HERE,
          base::Bind(&AtomURLRequest::DoInitialize, atom_url_request,
                     request_context_getter, method, url))) {
    return atom_url_request;
  }
  return nullptr;
}
void AtomURLRequest::Terminate() {