summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Svetoslav Ganov <svetoslavganov@google.com> 2012-09-21 11:10:22 -0700
committer Svetoslav Ganov <svetoslavganov@google.com> 2012-09-21 11:10:27 -0700
commitabcaeea1ee4d1fc1c34b7f9e48eea5debdb09e37 (patch)
tree0e98a1e8a17d63e1468064ca0214662da5e8156b
parentc1ec220c4b3f518d74be91b7a69fb42af6642ad1 (diff)
NPE in AcitivtyChooserModel.
1. If there is not current intent sent and the client tries to choose an activity a NPE occurs. The code in chooseActivity now checks for null intent. Note that having a null intent is a valid state. bug:6738922 Change-Id: I91d4415649ce070d4fa4aa187e9eac02928dd38c
-rw-r--r--core/java/android/widget/ActivityChooserModel.java8
1 files changed, 6 insertions, 2 deletions
diff --git a/core/java/android/widget/ActivityChooserModel.java b/core/java/android/widget/ActivityChooserModel.java
index fe6c4f5477ac..736566e45112 100644
--- a/core/java/android/widget/ActivityChooserModel.java
+++ b/core/java/android/widget/ActivityChooserModel.java
@@ -21,7 +21,6 @@ import android.content.Context;
import android.content.Intent;
import android.content.pm.ResolveInfo;
import android.database.DataSetObservable;
-import android.database.DataSetObserver;
import android.os.AsyncTask;
import android.text.TextUtils;
import android.util.Log;
@@ -458,13 +457,18 @@ public class ActivityChooserModel extends DataSetObservable {
* </p>
*
* @return An {@link Intent} for launching the activity or null if the
- * policy has consumed the intent.
+ * policy has consumed the intent or there is not current intent
+ * set via {@link #setIntent(Intent)}.
*
* @see HistoricalRecord
* @see OnChooseActivityListener
*/
public Intent chooseActivity(int index) {
synchronized (mInstanceLock) {
+ if (mIntent == null) {
+ return null;
+ }
+
ensureConsistentState();
ActivityResolveInfo chosenActivity = mActivities.get(index);