diff options
author | pfeldman@chromium.org <pfeldman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-06-10 12:00:28 +0000 |
---|---|---|
committer | pfeldman@chromium.org <pfeldman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-06-10 12:00:28 +0000 |
commit | dfe04990c5b4b9e215ad1468a85e5e0bbe4185b3 (patch) | |
tree | aa3bf982a00ce0146b0f604a250a7c3c16199e9c /chrome/browser/debugger | |
parent | ea7941b96505d6da60dbf61d854bc3f4aba1bff1 (diff) | |
download | chromium_src-dfe04990c5b4b9e215ad1468a85e5e0bbe4185b3.zip chromium_src-dfe04990c5b4b9e215ad1468a85e5e0bbe4185b3.tar.gz chromium_src-dfe04990c5b4b9e215ad1468a85e5e0bbe4185b3.tar.bz2 |
DevTools: do not crash on rapid refresh while on a Dev Tools Client window.
BUG=13494
Review URL: http://codereview.chromium.org/118494
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18049 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/debugger')
-rw-r--r-- | chrome/browser/debugger/devtools_manager.cc | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/chrome/browser/debugger/devtools_manager.cc b/chrome/browser/debugger/devtools_manager.cc index 16962bc..5e5907f 100644 --- a/chrome/browser/debugger/devtools_manager.cc +++ b/chrome/browser/debugger/devtools_manager.cc @@ -167,10 +167,7 @@ void DevToolsManager::OnNavigatingToPendingEntry(RenderViewHost* rvh, it != client_host_to_inspected_rvh_.end(); ++it) { DevToolsWindow* window = it->first->AsDevToolsWindow(); if (window && window->GetRenderViewHost() == rvh) { - RenderViewHost* inspected_rvn = it->second; - UnregisterDevToolsClientHostFor(inspected_rvn); - SendDetachToAgent(inspected_rvn); - inspected_rvh_for_reopen_ = inspected_rvn; + inspected_rvh_for_reopen_ = it->second; MessageLoop::current()->PostTask(FROM_HERE, NewRunnableMethod(this, &DevToolsManager::ForceReopenWindow)); @@ -197,7 +194,9 @@ void DevToolsManager::SendDetachToAgent(RenderViewHost* inspected_rvh) { void DevToolsManager::ForceReopenWindow() { if (inspected_rvh_for_reopen_) { - OpenDevToolsWindow(inspected_rvh_for_reopen_); - inspected_rvh_for_reopen_ = NULL; + RenderViewHost* inspected_rvn = inspected_rvh_for_reopen_; + SendDetachToAgent(inspected_rvn); + UnregisterDevToolsClientHostFor(inspected_rvn); + OpenDevToolsWindow(inspected_rvn); } } |