summaryrefslogtreecommitdiffstats
path: root/chrome/browser/debugger
diff options
context:
space:
mode:
authorpfeldman@chromium.org <pfeldman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-06-10 12:00:28 +0000
committerpfeldman@chromium.org <pfeldman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-06-10 12:00:28 +0000
commitdfe04990c5b4b9e215ad1468a85e5e0bbe4185b3 (patch)
treeaa3bf982a00ce0146b0f604a250a7c3c16199e9c /chrome/browser/debugger
parentea7941b96505d6da60dbf61d854bc3f4aba1bff1 (diff)
downloadchromium_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.cc11
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);
}
}