summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPer Andersson <per.andersson3@sonyericsson.com>2011-01-17 11:16:23 +0100
committerKenneth Andersson <kenneth.andersson@sonyericsson.com>2011-04-28 12:04:48 +0200
commit4ae02b37bb0ee0a9a626108299b6a2e9ac028ca2 (patch)
tree45109f3b66d29c2e53ec20727ade9d7d1d769b5a
parent13b21e608e47382cb94a0aeac13b24ac97f355d2 (diff)
downloadframeworks_base-4ae02b37bb0ee0a9a626108299b6a2e9ac028ca2.zip
frameworks_base-4ae02b37bb0ee0a9a626108299b6a2e9ac028ca2.tar.gz
frameworks_base-4ae02b37bb0ee0a9a626108299b6a2e9ac028ca2.tar.bz2
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
-rw-r--r--core/java/android/widget/PopupWindow.java4
1 files changed, 4 insertions, 0 deletions
diff --git a/core/java/android/widget/PopupWindow.java b/core/java/android/widget/PopupWindow.java
index 76755de..66524ab 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);