* **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/web_contents_preferences.cc
const base::StringPiece& key,
    bool val) {
  auto* current_value =
      preference_.FindKeyOfType(key, base::Value::Type::BOOLEAN);
  if (current_value) {
    return current_value->GetBool();
  } else {
    preference_.SetKey(key, base::Value(val));
    return val;
  }
}
bool WebContentsPreferences::IsEnabled(const base::StringPiece& name,
                                       bool default_value) const {
  auto* current_value =
      preference_.FindKeyOfType(name, base::Value::Type::BOOLEAN);
  if (current_value)
    return current_value->GetBool();
  return default_value;
}
void WebContentsPreferences::Merge(const base::DictionaryValue& extend) {
  if (preference_.is_dict())
    static_cast<base::DictionaryValue*>(&preference_)->MergeDictionary(&extend);
}
void WebContentsPreferences::Clear() {
  if (preference_.is_dict())
    static_cast<base::DictionaryValue*>(&preference_)->Clear();
}
bool WebContentsPreferences::GetPreference(const base::StringPiece& name,