diff --git a/atom/browser/native_window_mac.mm b/atom/browser/native_window_mac.mm index bf9e53250d50..b3515b9e547e 100644 --- a/atom/browser/native_window_mac.mm +++ b/atom/browser/native_window_mac.mm @@ -515,6 +515,11 @@ void NativeWindowMac::Close() { } void NativeWindowMac::CloseImmediately() { + // Retain the child window before closing it. If the last reference to the + // NSWindow goes away inside -[NSWindow close], then bad stuff can happen. + // See e.g. http://crbug.com/616701. + base::scoped_nsobject child_window(window_, + base::scoped_policy::RETAIN); [window_ close]; }