diff options
author | rohitrao@chromium.org <rohitrao@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-04-20 19:20:04 +0000 |
---|---|---|
committer | rohitrao@chromium.org <rohitrao@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-04-20 19:20:04 +0000 |
commit | a6f52cc255d22abd7d9ac9a90178a925ecc8a763 (patch) | |
tree | b2abd937ca9e22a926a8b02084ce78c3ef01822a | |
parent | 23484fc867f134507ce888634b932a74b905f14a (diff) | |
download | chromium_src-a6f52cc255d22abd7d9ac9a90178a925ecc8a763.zip chromium_src-a6f52cc255d22abd7d9ac9a90178a925ecc8a763.tar.gz chromium_src-a6f52cc255d22abd7d9ac9a90178a925ecc8a763.tar.bz2 |
Merge 45052 - [Mac] Clean up references to parentWindow_ when closing an extension popup.
BUG=40057
TEST=Install aniweather extension. Open popup and CmdQ while popup is still open. Should not crash.
Review URL: http://codereview.chromium.org/1659009
TBR=rohitrao@chromium.org
Review URL: http://codereview.chromium.org/1707001
git-svn-id: svn://svn.chromium.org/chrome/branches/375/src@45061 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r-- | chrome/browser/cocoa/extensions/extension_popup_controller.mm | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/chrome/browser/cocoa/extensions/extension_popup_controller.mm b/chrome/browser/cocoa/extensions/extension_popup_controller.mm index 0e656b8..1dec941 100644 --- a/chrome/browser/cocoa/extensions/extension_popup_controller.mm +++ b/chrome/browser/cocoa/extensions/extension_popup_controller.mm @@ -176,6 +176,14 @@ class DevtoolsNotificationBridge : public NotificationObserver { - (void)close { [parentWindow_ removeChildWindow:[self window]]; + + // No longer have a parent window, so nil out the pointer and deregister for + // notifications. + NSNotificationCenter* center = [NSNotificationCenter defaultCenter]; + [center removeObserver:self + name:NSWindowWillCloseNotification + object:parentWindow_]; + parentWindow_ = nil; [super close]; } |