summaryrefslogtreecommitdiffstats
path: root/ash/wm/root_window_layout_manager.cc
diff options
context:
space:
mode:
authorbshe@chromium.org <bshe@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-08-15 21:01:56 +0000
committerbshe@chromium.org <bshe@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-08-15 21:01:56 +0000
commit52f885d0417ce71b7a436f00f7d805ac5997e67d (patch)
tree051cdc31e68c492b71c7b2c4f7b9ecfa2ac1245d /ash/wm/root_window_layout_manager.cc
parentf16aabfd9799a5c2bc684978cff1b4919b215b5b (diff)
downloadchromium_src-52f885d0417ce71b7a436f00f7d805ac5997e67d.zip
chromium_src-52f885d0417ce71b7a436f00f7d805ac5997e67d.tar.gz
chromium_src-52f885d0417ce71b7a436f00f7d805ac5997e67d.tar.bz2
Fix memory leak on Chromium OS Heapcheck and Chromium OS (valgrind)
Memcheck:Leak fun:_Znw* fun:_ZN3ash27DesktopBackgroundController16InstallComponentEPN4aura10RootWindowE fun:_ZN3ash27DesktopBackgroundController29InstallComponentForAllWindowsEv fun:_ZN3ash27DesktopBackgroundController29SetDesktopBackgroundImageModeEv fun:_ZN3ash27DesktopBackgroundController20CreateEmptyWallpaperEv fun:_ZN3ash12_GLOBAL__N_126DummyUserWallpaperDelegate19InitializeWallpaperEv fun:_ZN3ash5Shell4InitEv fun:_ZN3ash5Shell14CreateInstanceEPNS_13ShellDelegateE fun:_ZN3ash4test11AshTestBase5SetUpEv http://build.chromium.org/p/chromium.memory.fyi/builders/Chromium%20OS%20%28valgrind%29%284%29/builds/12953 BUG=141563, 141676, 142042 Review URL: https://chromiumcodereview.appspot.com/10854153 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@151746 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ash/wm/root_window_layout_manager.cc')
-rw-r--r--ash/wm/root_window_layout_manager.cc11
1 files changed, 6 insertions, 5 deletions
diff --git a/ash/wm/root_window_layout_manager.cc b/ash/wm/root_window_layout_manager.cc
index 99a9774..5eeb907 100644
--- a/ash/wm/root_window_layout_manager.cc
+++ b/ash/wm/root_window_layout_manager.cc
@@ -39,11 +39,12 @@ void RootWindowLayoutManager::OnWindowResized() {
for (j = (*i)->children().begin(); j != (*i)->children().end(); ++j)
(*j)->SetBounds(fullscreen_bounds);
}
- internal::DesktopBackgroundWidgetController* background = NULL;
- internal::ComponentWrapper* wrapper =
- owner_->GetProperty(internal::kComponentWrapper);
- if (wrapper)
- background = wrapper->component();
+ internal::DesktopBackgroundWidgetController* background =
+ owner_->GetProperty(internal::kWindowDesktopComponent);
+ if (!background && owner_->GetProperty(internal::kComponentWrapper)) {
+ background = owner_->GetProperty(internal::kComponentWrapper)->
+ GetComponent(false);
+ }
if (background)
background->SetBounds(fullscreen_bounds);
}