diff options
author | erikkay@google.com <erikkay@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-06-12 18:39:25 +0000 |
---|---|---|
committer | erikkay@google.com <erikkay@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-06-12 18:39:25 +0000 |
commit | fd6521901cb7eb76cdd05d330ea6b70dbdcdf7da (patch) | |
tree | 4ec738c67a0797cab83012a1027c8a3f105cdfd2 /chrome/browser/extensions/extension_host.cc | |
parent | bd4816fe35162438ff2a9e796fe47b15872404ac (diff) | |
download | chromium_src-fd6521901cb7eb76cdd05d330ea6b70dbdcdf7da.zip chromium_src-fd6521901cb7eb76cdd05d330ea6b70dbdcdf7da.tar.gz chromium_src-fd6521901cb7eb76cdd05d330ea6b70dbdcdf7da.tar.bz2 |
Fix object ownership and cleanup issues between ExtensionHost and ExtensionView. This was leading to crashes at shutdown as well as shutdown code not cleaning up properly.
BUG=13974
TEST=none
Review URL: http://codereview.chromium.org/126064
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18296 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/extensions/extension_host.cc')
-rw-r--r-- | chrome/browser/extensions/extension_host.cc | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/chrome/browser/extensions/extension_host.cc b/chrome/browser/extensions/extension_host.cc index 8ccc9c7..d78d8bc 100644 --- a/chrome/browser/extensions/extension_host.cc +++ b/chrome/browser/extensions/extension_host.cc @@ -48,6 +48,9 @@ ExtensionHost::~ExtensionHost() { void ExtensionHost::CreateView(Browser* browser) { #if defined(TOOLKIT_VIEWS) view_.reset(new ExtensionView(this, browser)); + // We own |view_|, so don't auto delete when it's removed from the view + // hierarchy. + view_->SetParentOwned(false); #else // TODO(port) NOTREACHED(); |