From 73590c7751b9185137de962ba9ad9ff5a6e11e5d Mon Sep 17 00:00:00 2001 From: lucychang Date: Mon, 1 Feb 2021 15:14:20 +0800 Subject: [PATCH] Clear data after calling ViewGroup#buildOrderedChildList It needs to clear the reference views after calling ViewGroup#buildOrderedChildList to prevent memory leak. Bug: 178029590 Test: manually test Change-Id: I770c8deab00496f9361ab30837a31f44c7367a46 --- core/java/android/view/View.java | 1 + 1 file changed, 1 insertion(+) diff --git a/core/java/android/view/View.java b/core/java/android/view/View.java index 5c0e15639491d..10431f4d99f71 100644 --- a/core/java/android/view/View.java +++ b/core/java/android/view/View.java @@ -10364,6 +10364,7 @@ public class View implements Drawable.Callback, KeyEvent.Callback, for (int i = 0; i < childDrawIndex; i++) { drawingOrderInParent += numViewsForAccessibility(preorderedList.get(i)); } + preorderedList.clear(); } else { final int childIndex = parentGroup.indexOfChild(viewAtDrawingLevel); final boolean customOrder = parentGroup.isChildrenDrawingOrderEnabled();