Commit 9566d705 authored by jschuh@chromium.org's avatar jschuh@chromium.org

Fix unresponsive browser due to a crashed plugin with a modal dialog.

If a plugin dies with an open modal window the browser window will not be enabled. So, we re-enable the browser if it's ever disabled without any child dialogs.

BUG=90002
TEST=Kill the Flash process while a modal dialog (e.g. file, print) is open. Browser should remain responsive.
Review URL: http://codereview.chromium.org/7812005

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@98875 0039d316-1c4b-4281-b951-d872f2087c98
parent 2bd527af
......@@ -59,6 +59,14 @@ void HungWindowDetector::OnTick() {
EnumChildWindows(top_level_window_, ChildWndEnumProc,
reinterpret_cast<LPARAM>(this));
// The window shouldn't be disabled unless we're showing a modal dialog.
// If we're not, then reenable the window.
if (!::IsWindowEnabled(top_level_window_) &&
!::GetWindow(top_level_window_, GW_ENABLEDPOPUP)) {
::EnableWindow(top_level_window_, TRUE);
}
enumerating_ = false;
}
......
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