- Electron version: 1.3.3
- Operating system: Windows

```
Thread 0 (crashed) 0 electron.exe!aura::Window::GetHost() [window.cc : 221 + 0x0]
rax = 0x0000000000000000
rdx = 0x0000000000000064
rcx = 0x0000000000000000
rbx = 0x00000094db8ec840
rsi = 0x0000000000000002
rdi = 0x00000094ded74740
rbp = 0x0000000000000001
rsp = 0x00000094d839dc40
r8 = 0x00000094d84539c0
r9 = 0x0000000000008000
r10 = 0x0000000000000000
r11 = 0x0000000000000202
r12 = 0x0000000000000000
r13 = 0x00007ff61e79d27c
r14 = 0x0000000000000000
r15 = 0x00007ff61e79d27c
rip = 0x00007ff61e982e54

electron.exe!atom::NativeWindowViews::GetAcceleratedWidget() [native_window_views.cc : 975 + 0x11]
rsp = 0x00000094d839dc70
rip = 0x00007ff61e915549

electron.exe!atom::NativeWindowViews::IsClosable() [native_window_views.cc : 671 + 0x9]
rsp = 0x00000094d839dca0
rip = 0x00007ff61e915947

electron.exe!atom::NativeWindowViews::Close() [native_window_views.cc : 339 + 0xc]
rsp = 0x00000094d839dd20 
rip = 0x00007ff61e915152 

electron.exe!atom::WindowList::CloseAllWindows() [window_list.cc : 74 + 0x9]
rsp = 0x00000094d839dd50
rip = 0x00007ff61e8d91e5

electron.exe!atom::Browser::Quit() [browser.cc : 48 + 0x5]
rsp = 0x00000094d839dda0
rip = 0x00007ff61e8018b5
```

atom/browser/window_list.cc
#include "atom/browser/window_list.h"
#include <algorithm>
#include "atom/browser/native_window.h"
#include "atom/browser/window_list_observer.h"
#include "base/logging.h"
namespace atom {
base::LazyInstance<base::ObserverList<WindowListObserver>>::Leaky
    WindowList::observers_ = LAZY_INSTANCE_INITIALIZER;
WindowList* WindowList::instance_ = nullptr;
WindowList* WindowList::GetInstance() {
  if (!instance_)
    instance_ = new WindowList;
  return instance_;
}
void WindowList::AddWindow(NativeWindow* window) {
  DCHECK(window);
  
  WindowVector& windows = GetInstance()->windows_;
  windows.push_back(window);
  FOR_EACH_OBSERVER(WindowListObserver, observers_.Get(),
                    OnWindowAdded(window));
}
void WindowList::RemoveWindow(NativeWindow* window) {