diff options
author | oshima@chromium.org <oshima@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-04-29 07:37:48 +0000 |
---|---|---|
committer | oshima@chromium.org <oshima@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-04-29 07:37:48 +0000 |
commit | 34ebf389303ff6d53c2c0c9af6ed74162e0ec881 (patch) | |
tree | 5b7d4420aeb5eedddcf333dc55560ffc932c2e7d /chrome/browser/chromeos/frame/panel_controller.cc | |
parent | 8cffa8c39cf621d5ff98c711a12f5abbaeb0b307 (diff) | |
download | chromium_src-34ebf389303ff6d53c2c0c9af6ed74162e0ec881.zip chromium_src-34ebf389303ff6d53c2c0c9af6ed74162e0ec881.tar.gz chromium_src-34ebf389303ff6d53c2c0c9af6ed74162e0ec881.tar.bz2 |
Memory leak fix.
We're releasing panel controller but never deleted.
Handle edge case where a renderer requests resize after the panel is closed.
BUG=none
TEST=added new test case TestCloseOpen to verify it.
Review URL: http://codereview.chromium.org/1687011
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45919 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/chromeos/frame/panel_controller.cc')
-rw-r--r-- | chrome/browser/chromeos/frame/panel_controller.cc | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/chrome/browser/chromeos/frame/panel_controller.cc b/chrome/browser/chromeos/frame/panel_controller.cc index 1b4c048..f683607 100644 --- a/chrome/browser/chromeos/frame/panel_controller.cc +++ b/chrome/browser/chromeos/frame/panel_controller.cc @@ -265,7 +265,8 @@ void PanelController::Close() { void PanelController::ButtonPressed( views::Button* sender, const views::Event& event) { if (title_window_ && sender == title_content_->close_button()) { - delegate_->ClosePanel(); + if (delegate_) + delegate_->ClosePanel(); Close(); } } |