зеркало из https://github.com/electron/electron.git
fix: `BrowserView` crash when 'beforeunload' prevented (#37205)
fix: crash when beforeunload prevented
This commit is contained in:
Родитель
4d6f230d21
Коммит
8eee4f2df1
|
@ -112,7 +112,6 @@ BrowserWindow::~BrowserWindow() {
|
|||
api_web_contents_->RemoveObserver(this);
|
||||
// Destroy the WebContents.
|
||||
OnCloseContents();
|
||||
api_web_contents_->Destroy();
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -140,6 +139,7 @@ void BrowserWindow::WebContentsDestroyed() {
|
|||
|
||||
void BrowserWindow::OnCloseContents() {
|
||||
BaseWindow::ResetBrowserViews();
|
||||
api_web_contents_->Destroy();
|
||||
}
|
||||
|
||||
void BrowserWindow::OnRendererResponsive(content::RenderProcessHost*) {
|
||||
|
|
|
@ -1222,7 +1222,9 @@ void WebContents::CloseContents(content::WebContents* source) {
|
|||
for (ExtendedWebContentsObserver& observer : observers_)
|
||||
observer.OnCloseContents();
|
||||
|
||||
Destroy();
|
||||
// If there are observers, OnCloseContents will call Destroy()
|
||||
if (observers_.empty())
|
||||
Destroy();
|
||||
}
|
||||
|
||||
void WebContents::ActivateContents(content::WebContents* source) {
|
||||
|
|
Загрузка…
Ссылка в новой задаче