fix: prevent double-destroy of window (#16478)

This commit is contained in:
trop[bot]
2019-01-21 21:17:24 -08:00
committed by Shelley Vohr
parent 89ea2105a5
commit e7d7cc35e0

View File

@@ -185,7 +185,14 @@ bool BrowserWindow::OnMessageReceived(const IPC::Message& message,
}
void BrowserWindow::OnCloseContents() {
DCHECK(web_contents());
// On some machines it may happen that the window gets destroyed for twice,
// checking web_contents() can effectively guard against that.
// https://github.com/electron/electron/issues/16202.
//
// TODO(zcbenz): We should find out the root cause and improve the closing
// procedure of BrowserWindow.
if (!web_contents())
return;
// Close all child windows before closing current window.
v8::Locker locker(isolate());