Merge lp:~unity-team/unity/unity-sru-fix-mem-leaks into lp:unity/3.0
Proposed by
Jay Taoko
Status: | Merged |
---|---|
Approved by: | Neil J. Patel |
Approved revision: | no longer in the source branch. |
Merged at revision: | 1198 |
Proposed branch: | lp:~unity-team/unity/unity-sru-fix-mem-leaks |
Merge into: | lp:unity/3.0 |
Diff against target: |
51 lines (+11/-2) 2 files modified
src/PanelMenuView.cpp (+5/-1) src/unityshell.cpp (+6/-1) |
To merge this branch: | bzr merge lp:~unity-team/unity/unity-sru-fix-mem-leaks |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Neil J. Patel (community) | Approve | ||
Daniel van Vugt | Needs Fixing | ||
Review via email:
|
Description of the change
* _window_buttons was not properly destroyed in PanelMenuView:
* In UnityScreen:
* In UnityScreen:
To post a comment you must log in.
Those changes to unityshell.cpp are similar to what I had implemented and was going to move into a new bug at some point.
Two concerns though:
1. layout should now be a local variable, because it is effectively lost to the UnityScreen class once it is assigned to the launcherWindow. The layout member should then be removed completely. Alternatively, if you keep layout as a member then a more clear and elegant solution is to reintroduce its UnReference and just give it a SinkReference too.
2. My fixes to unityshell.cpp also have this leak-fix you seem to be missing:
LOGGER_ START_PROCESS ("initLauncher- Panel") ; >panelControlle r = new PanelController (); roller- >SinkReference( ); panelController ); END_PROCESS ("initLauncher- Panel") ;
self-
+ self->panelCont
self->AddChild (self->
LOGGER_
Maybe I was mistaken?...