Commit c4a4dfb2 authored by jochen@chromium.org's avatar jochen@chromium.org

Suspend shared timers while blockingly closing databases

BUG=388771
R=michaeln@chromium.org

Review URL: https://codereview.chromium.org/409863002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@284785 0039d316-1c4b-4281-b951-d872f2087c98
parent 6e44c30f
...@@ -574,8 +574,13 @@ void RenderThreadImpl::Shutdown() { ...@@ -574,8 +574,13 @@ void RenderThreadImpl::Shutdown() {
// Wait for all databases to be closed. // Wait for all databases to be closed.
if (webkit_platform_support_) { if (webkit_platform_support_) {
// WaitForAllDatabasesToClose might run a nested message loop. To avoid
// processing timer events while we're already in the process of shutting
// down blink, put a ScopePageLoadDeferrer on the stack.
WebView::willEnterModalLoop();
webkit_platform_support_->web_database_observer_impl()-> webkit_platform_support_->web_database_observer_impl()->
WaitForAllDatabasesToClose(); WaitForAllDatabasesToClose();
WebView::didExitModalLoop();
} }
// Shutdown in reverse of the initialization order. // Shutdown in reverse of the initialization order.
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment