From 4ae02b37bb0ee0a9a626108299b6a2e9ac028ca2 Mon Sep 17 00:00:00 2001 From: Per Andersson Date: Mon, 17 Jan 2011 11:16:23 +0100 Subject: [PATCH] Added null check on return value for getKeyDispatcherState() The result from getKeyDispatcherState() was used without checking if it returned null, which resulted in a NullPointerException. Change-Id: I4b55ad44d5c08b7f729dbbdbcaed0e978a430258 --- core/java/android/widget/PopupWindow.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/core/java/android/widget/PopupWindow.java b/core/java/android/widget/PopupWindow.java index 76755de27c213..66524abbbd8c7 100644 --- a/core/java/android/widget/PopupWindow.java +++ b/core/java/android/widget/PopupWindow.java @@ -1421,6 +1421,10 @@ public class PopupWindow { @Override public boolean dispatchKeyEvent(KeyEvent event) { if (event.getKeyCode() == KeyEvent.KEYCODE_BACK) { + if (getKeyDispatcherState() == null) { + return super.dispatchKeyEvent(event); + } + if (event.getAction() == KeyEvent.ACTION_DOWN && event.getRepeatCount() == 0) { getKeyDispatcherState().startTracking(event, this);