Call Surface.release() for starting windows
If the window maanger received BinderDied for a starting window before activity manager then it would null AppWindowToken.startingWindow and not go through the PhoneWindowManager.removeStartingWindow call later. That meant that Surface.release() was never called from ViewRootImpl.dispatchDetachedFromWindow(). Which in turn meant that graphics memory was being leaked. This change notifies the PhoneWindowManager to go through the removeStartingWindow path when the starting window gets removed for any reason. This change also ensures that scheduleRemoveStartingWindow is always called with the window manager lock held. Fixes bug 17381033. Change-Id: Ic6860d0e1410c9bb5053d85ae21a08b11f573b6d
Loading
Please register or sign in to comment