Merge "Fix Display SurfaceControl leak"

This commit is contained in:
Chavi Weingarten
2020-02-24 18:00:49 +00:00
committed by Android (Google) Code Review
2 changed files with 3 additions and 7 deletions

View File

@@ -2717,6 +2717,9 @@ class DisplayContent extends WindowContainer<DisplayContent.DisplayChildWindowCo
mRemovingDisplay = false;
}
// Apply the pending transaction here since we may not be able to reach the DisplayContent
// on the next traversal if it's removed from RootWindowContainer child list.
getPendingTransaction().apply();
mWmService.mWindowPlacerLocked.requestTraversal();
}

View File

@@ -530,13 +530,6 @@ class WindowContainer<E extends WindowContainer> extends ConfigurationContainer<
if (mSurfaceControl != null) {
getPendingTransaction().remove(mSurfaceControl);
// Merge to parent transaction to ensure the transactions on this WindowContainer are
// applied in native even if WindowContainer is removed.
if (mParent != null) {
mParent.getPendingTransaction().merge(getPendingTransaction());
}
setSurfaceControl(null);
mLastSurfacePosition.set(0, 0);
scheduleAnimation();