* Electron version: 1.5.0
* Operating system: macOS 10.12

### Expected behavior

* An `uncaughtException` event is emitted on `process` in the main process for thrown errors

### Actual behavior

* Event is not emitted
* Error is logged in the terminal

### How to reproduce

* `throw Error('here')` in the main process
* Dialog does not popup

Only appears to happen in 1.5.0, not 1.4.x, possibly related to the node 7.4 upgrade.

atom/common/node_bindings.cc
const std::vector<std::string>& vector) {
  std::unique_ptr<const char*[]> array(new const char*[vector.size()]);
  for (size_t i = 0; i < vector.size(); ++i) {
    array[i] = vector[i].c_str();
  }
  return array;
}
base::FilePath GetResourcesPath(bool is_browser) {
  auto command_line = base::CommandLine::ForCurrentProcess();
  base::FilePath exec_path(command_line->GetProgram());
  PathService::Get(base::FILE_EXE, &exec_path);
  base::FilePath resources_path =
#if defined(OS_MACOSX)
      is_browser ? exec_path.DirName().DirName().Append("Resources") :
                   exec_path.DirName().DirName().DirName().DirName().DirName()
                            .Append("Resources");
#else
      exec_path.DirName().Append(FILE_PATH_LITERAL("resources"));
#endif
  return resources_path;
}
}  
NodeBindings::NodeBindings(bool is_browser)
    : is_browser_(is_browser),
      uv_loop_(uv_default_loop()),
      embed_closed_(false),
      uv_env_(nullptr),
      weak_factory_(this) {
}
NodeBindings::~NodeBindings() {