- Electron version: 0.37.7
- Operating system: MacOS 10.11.4

Create a directory with the attached `package.json` and `main.js` files. The app just calls `app.makeSingleInstance` (code sample copied from the Electron docs) and then creates an empty window.

[package.json.txt](https://github.com/electron/electron/files/233556/package.json.txt)
[main.js.txt](https://github.com/electron/electron/files/233558/main.js.txt)

Type:

```
    rm -rf ~/Library/Application\ Support/Electron
    npm start
```

The app will display

```
    ### version 0.37.7
    ### shouldQuit:  true
```

...even though no other instance is running.

If you create an empty ~/Library/Application\ Support/Electron directory, the app runs as expected.

(Obviously, any established Electron developer will have such a directory and will not notice this bug. Their users will notice it very quickly indeed.)

chromium_src/chrome/browser/process_singleton_posix.cc
}
ProcessSingleton::NotifyResult ProcessSingleton::NotifyOtherProcess() {
  return NotifyOtherProcessWithTimeout(
      *base::CommandLine::ForCurrentProcess(), kRetryAttempts,
      base::TimeDelta::FromSeconds(kTimeoutInSeconds), true);
}
ProcessSingleton::NotifyResult ProcessSingleton::NotifyOtherProcessWithTimeout(
    const base::CommandLine& cmd_line,
    int retry_attempts,
    const base::TimeDelta& timeout,
    bool kill_unresponsive) {
  DCHECK_GE(retry_attempts, 0);
  DCHECK_GE(timeout.InMicroseconds(), 0);
  base::TimeDelta sleep_interval = timeout / retry_attempts;
  ScopedSocket socket;
  for (int retries = 0; retries <= retry_attempts; ++retries) {
    
    if (ConnectSocket(&socket, socket_path_, cookie_path_))
      break;
    
    
    
    
    std::string hostname;
    int pid;
    if (!ParseLockPath(lock_path_, &hostname, &pid)) {
      
      return PROCESS_NONE;
    }