summaryrefslogtreecommitdiffstats
path: root/chrome/browser/external_tab_container.cc
diff options
context:
space:
mode:
authorananta@chromium.org <ananta@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-09-28 21:13:08 +0000
committerananta@chromium.org <ananta@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-09-28 21:13:08 +0000
commit8e3e63f62e7e088b7276c3f3cde47be3f06565d6 (patch)
treeb61418f683d28ebe767e9b0faba6ff4fb3d697a5 /chrome/browser/external_tab_container.cc
parentba69a7db718bd6815e154b36cead5d0e25d9e45e (diff)
downloadchromium_src-8e3e63f62e7e088b7276c3f3cde47be3f06565d6.zip
chromium_src-8e3e63f62e7e088b7276c3f3cde47be3f06565d6.tar.gz
chromium_src-8e3e63f62e7e088b7276c3f3cde47be3f06565d6.tar.bz2
If IE was navigated away to a different page when the ChromeFrame inspector window was open
it would crash the browser. The fix is to ensure that the inspector window is closed when the ExternalTabContainer window is uninitialized. This fixes bug http://code.google.com/p/chromium/issues/detail?id=22993 Bug=22993 Review URL: http://codereview.chromium.org/249005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@27407 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/external_tab_container.cc')
-rw-r--r--chrome/browser/external_tab_container.cc5
1 files changed, 5 insertions, 0 deletions
diff --git a/chrome/browser/external_tab_container.cc b/chrome/browser/external_tab_container.cc
index b4bd12b..df19c1d 100644
--- a/chrome/browser/external_tab_container.cc
+++ b/chrome/browser/external_tab_container.cc
@@ -12,6 +12,7 @@
#include "base/win_util.h"
#include "chrome/browser/automation/automation_provider.h"
#include "chrome/browser/browser_window.h"
+#include "chrome/browser/debugger/devtools_manager.h"
#include "chrome/browser/load_notification_details.h"
#include "chrome/browser/page_info_window.h"
#include "chrome/browser/profile.h"
@@ -156,6 +157,10 @@ bool ExternalTabContainer::Init(Profile* profile,
}
void ExternalTabContainer::Uninitialize() {
+ RenderViewHost* rvh = tab_contents_->render_view_host();
+ if (rvh) {
+ DevToolsManager::GetInstance()->UnregisterDevToolsClientHostFor(rvh);
+ }
registrar_.RemoveAll();
if (tab_contents_) {
NotificationService::current()->Notify(