From aec55ff58ca4ae1056744015cc72771866fc347c Mon Sep 17 00:00:00 2001 From: chaviw Date: Mon, 4 Dec 2017 18:39:34 -0800 Subject: Ensure non app WindowTokens are removed when closing. Non app WindowTokens weren't propery removed when closing. This would cause several layers to stay around in the system. Bug: 69852584 Test: Turn phone screen off and back on again. Window is removed. Change-Id: I51674ebdab129b462e958c3027a26ee6feeffb9f --- services/core/java/com/android/server/wm/WindowToken.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/services/core/java/com/android/server/wm/WindowToken.java b/services/core/java/com/android/server/wm/WindowToken.java index 62a2abbb15ec..389d3695baa1 100644 --- a/services/core/java/com/android/server/wm/WindowToken.java +++ b/services/core/java/com/android/server/wm/WindowToken.java @@ -125,6 +125,11 @@ class WindowToken extends WindowContainer { } void setExiting() { + if (mChildren.size() == 0) { + super.removeImmediately(); + return; + } + // This token is exiting, so allow it to be removed when it no longer contains any windows. mPersistOnEmpty = false; -- cgit v1.2.3-59-g8ed1b