summaryrefslogtreecommitdiffstats
path: root/core/java/android
diff options
context:
space:
mode:
authorJeff Sharkey <jsharkey@android.com>2012-03-27 10:49:19 -0700
committerAndroid (Google) Code Review <android-gerrit@google.com>2012-03-27 10:49:19 -0700
commit40bd578db80c639c5b715cf99d0f6c3b1b9930e9 (patch)
tree205bc4cef21059813e3c2a3065c60cb894f73d9a /core/java/android
parentdec4782fefb3b224e56055ca03dbd9592fb3209a (diff)
parentf27ea66114569d233c65cb895543668f3202ca19 (diff)
downloadframeworks_base-40bd578db80c639c5b715cf99d0f6c3b1b9930e9.zip
frameworks_base-40bd578db80c639c5b715cf99d0f6c3b1b9930e9.tar.gz
frameworks_base-40bd578db80c639c5b715cf99d0f6c3b1b9930e9.tar.bz2
Merge "Avoid ClassCast when migrating ACTION_SEND extras."
Diffstat (limited to 'core/java/android')
-rw-r--r--core/java/android/content/Intent.java14
1 files changed, 12 insertions, 2 deletions
diff --git a/core/java/android/content/Intent.java b/core/java/android/content/Intent.java
index 1c9ef38..a0d0271 100644
--- a/core/java/android/content/Intent.java
+++ b/core/java/android/content/Intent.java
@@ -6483,7 +6483,12 @@ public class Intent implements Parcelable, Cloneable {
final String action = getAction();
if (ACTION_SEND.equals(action)) {
- final Uri stream = getParcelableExtra(EXTRA_STREAM);
+ final Uri stream;
+ try {
+ stream = getParcelableExtra(EXTRA_STREAM);
+ } catch (ClassCastException e) {
+ return;
+ }
if (stream != null) {
final ClipData clipData = new ClipData(
null, new String[] { getType() }, new ClipData.Item(stream));
@@ -6493,7 +6498,12 @@ public class Intent implements Parcelable, Cloneable {
}
} else if (ACTION_SEND_MULTIPLE.equals(action)) {
- final ArrayList<Uri> streams = getParcelableArrayListExtra(EXTRA_STREAM);
+ final ArrayList<Uri> streams;
+ try {
+ streams = getParcelableArrayListExtra(EXTRA_STREAM);
+ } catch (ClassCastException e) {
+ return;
+ }
if (streams != null && streams.size() > 0) {
final Uri firstStream = streams.get(0);
final ClipData clipData = new ClipData(