Index: content/browser/web_contents/web_contents_impl.cc |
diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc |
index ffcc72b3b8dca97981cebe899e4becc36b3ac48b..8712acdd6f84f7e424ec019701384fdc854d24a7 100644 |
--- a/content/browser/web_contents/web_contents_impl.cc |
+++ b/content/browser/web_contents/web_contents_impl.cc |
@@ -3666,6 +3666,13 @@ void WebContentsImpl::UpdateRenderViewSizeForRenderManager() { |
view_->SizeContents(size); |
} |
+void WebContentsImpl::CancelModalDialogsForRenderManager() { |
+ // We need to cancel modal dialogs when doing a process swap, since the load |
+ // deferrer would prevent us from swapping out. |
+ if (dialog_manager_) |
+ dialog_manager_->CancelActiveAndPendingDialogs(this); |
+} |
+ |
void WebContentsImpl::NotifySwappedFromRenderManager(RenderViewHost* rvh) { |
NotifySwapped(rvh); |