Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 697c3986 authored by Steve Elliott's avatar Steve Elliott
Browse files

Fix potential IOOB error in icon reordering

Flag: ACONFIG com.android.systemui.notifications_icon_container_refactor TRUNKFOOD
Bug: 322852228
Test: atest SystemUITests
Change-Id: I9f59666fcf3e56402c817add9b52608b243816ad
parent e9ff7d3a
Loading
Loading
Loading
Loading
+5 −1
Original line number Diff line number Diff line
@@ -311,12 +311,13 @@ object NotificationIconContainerViewBinder {
                                boundViewsByNotifKey[it.notifKey]?.first
                            }
                        val childCount = view.childCount
                        val toRemove = mutableListOf<View>()
                        for (i in 0 until childCount) {
                            val actual = view.getChildAt(i)
                            val expected = expectedChildren.getOrNull(i)
                            if (expected == null) {
                                Log.wtf(TAG, "[$logTag] Unexpected child $actual")
                                view.removeView(actual)
                                toRemove.add(actual)
                                continue
                            }
                            if (actual === expected) {
@@ -325,6 +326,9 @@ object NotificationIconContainerViewBinder {
                            view.removeView(expected)
                            view.addView(expected, i)
                        }
                        for (child in toRemove) {
                            view.removeView(child)
                        }
                    }
                }
            }