Release the native window after window gets closed
authorCheng Zhao <zcbenz@gmail.com>
Thu, 17 Sep 2015 03:30:17 +0000 (11:30 +0800)
committerCheng Zhao <zcbenz@gmail.com>
Thu, 17 Sep 2015 03:30:17 +0000 (11:30 +0800)
Previously we delete the window after the JS object gets garbage
collected, which is too late for releasing some resources.

atom/browser/api/atom_api_window.cc

index 1a76c3e..3503fb4 100644 (file)
@@ -116,6 +116,9 @@ void Window::OnWindowClosed() {
   window_->RemoveObserver(this);
 
   Emit("closed");
+
+  // Clean up the resources after window has been closed.
+  base::MessageLoop::current()->DeleteSoon(FROM_HERE, window_.release());
 }
 
 void Window::OnWindowBlur() {