summaryrefslogtreecommitdiffstats
path: root/chrome/browser/chromeos/frame/panel_controller.cc
diff options
context:
space:
mode:
authoroshima@chromium.org <oshima@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-04-29 07:37:48 +0000
committeroshima@chromium.org <oshima@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-04-29 07:37:48 +0000
commit34ebf389303ff6d53c2c0c9af6ed74162e0ec881 (patch)
tree5b7d4420aeb5eedddcf333dc55560ffc932c2e7d /chrome/browser/chromeos/frame/panel_controller.cc
parent8cffa8c39cf621d5ff98c711a12f5abbaeb0b307 (diff)
downloadchromium_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.cc3
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();
}
}