From ed8b403cc8066bf76cdf98f8d9906ff810defc5b Mon Sep 17 00:00:00 2001 From: Adam Powell Date: Tue, 16 Nov 2010 10:22:35 -0800 Subject: Fix bug 3198503 - NPE at MenuPopupHelper.dismiss Make sure dismiss() can be called even when the popup is not currently showing. Change-Id: I48077d8b3bfe0df04bceeb056ed54cbd79a6e660 --- core/java/com/android/internal/view/menu/MenuPopupHelper.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/core/java/com/android/internal/view/menu/MenuPopupHelper.java b/core/java/com/android/internal/view/menu/MenuPopupHelper.java index 1d103ed660f1..1406e4e1d5c9 100644 --- a/core/java/com/android/internal/view/menu/MenuPopupHelper.java +++ b/core/java/com/android/internal/view/menu/MenuPopupHelper.java @@ -110,8 +110,10 @@ public class MenuPopupHelper implements AdapterView.OnItemClickListener, View.On if (isShowing()) { mPopup.dismiss(); } - mTreeObserver.removeGlobalOnLayoutListener(this); - mTreeObserver = null; + if (mTreeObserver != null) { + mTreeObserver.removeGlobalOnLayoutListener(this); + mTreeObserver = null; + } } public boolean isShowing() { -- cgit v1.2.3-59-g8ed1b