Fix potential NPE when removing bubble

The icon view on the bubble might be cleaned up somehow before we
try to remove it, grab it before the animation starts and ensure
it's not null before removing it from the view.

Bug: 281891504
Test: none / couldn't repro locally
Change-Id: Ic2a2b01cc0270ba00c8a5c1ad07c1256bbc1b351
This commit is contained in:
Mady Mellor
2023-05-11 09:28:57 -07:00
parent 207bc54d29
commit a9f16586c4

View File

@@ -1784,10 +1784,13 @@ public class BubbleStackView extends FrameLayout
// We're expanded while the last bubble is being removed. Let the scrim animate away
// and then remove our views (removing the icon view triggers the removal of the
// bubble window so do that at the end of the animation so we see the scrim animate).
BadgedImageView iconView = bubble.getIconView();
showScrim(false, () -> {
mRemovingLastBubbleWhileExpanded = false;
bubble.cleanupExpandedView();
mBubbleContainer.removeView(bubble.getIconView());
if (iconView != null) {
mBubbleContainer.removeView(iconView);
}
bubble.cleanupViews(); // cleans up the icon view
updateExpandedView(); // resets state for no expanded bubble
});