From ac90c19cab7e05dc8add6acbc8f74c9f854d098d Mon Sep 17 00:00:00 2001 From: Craig Mautner Date: Wed, 12 Feb 2014 12:37:17 -0800 Subject: Don't add windows from exiting app tokens twice. If an apptoken's removal has been delayed then it will be in both mExitingAppTokens and the stack's tasks. When rebuilding the windows the windows from that apptoken will get added twice. This change skips adding those windows from apptokens that have already been added from mExitingAppTokens. Change-Id: I55f94b7dbef36aeacb390b91fbe82426eaac5458 --- services/core/java/com/android/server/wm/WindowManagerService.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/services/core/java/com/android/server/wm/WindowManagerService.java b/services/core/java/com/android/server/wm/WindowManagerService.java index c6976c9d8bcf..63aef8ffb4b2 100644 --- a/services/core/java/com/android/server/wm/WindowManagerService.java +++ b/services/core/java/com/android/server/wm/WindowManagerService.java @@ -8067,6 +8067,9 @@ public class WindowManagerService extends IWindowManager.Stub final int numTokens = tokens.size(); for (int tokenNdx = 0; tokenNdx < numTokens; ++tokenNdx) { final AppWindowToken wtoken = tokens.get(tokenNdx); + if (wtoken.mDeferRemoval) { + continue; + } i = reAddAppWindowsLocked(displayContent, i, wtoken); } } -- cgit v1.2.3-59-g8ed1b