diff options
author | Dianne Hackborn <hackbod@google.com> | 2014-12-10 21:59:37 +0000 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2014-12-10 21:59:37 +0000 |
commit | 69ff299e79a9215af254e32da91dc14b5a0bd1b2 (patch) | |
tree | 9eb0f2d3215643e4662ce179213a8ea36d41da79 /core/java/android/content | |
parent | 664effc8240250f0ad6e149f762b5bbc3ccd6abe (diff) | |
parent | 9b287368b05f36e322f339b82d2bb495f230ca50 (diff) | |
download | frameworks_base-69ff299e79a9215af254e32da91dc14b5a0bd1b2.zip frameworks_base-69ff299e79a9215af254e32da91dc14b5a0bd1b2.tar.gz frameworks_base-69ff299e79a9215af254e32da91dc14b5a0bd1b2.tar.bz2 |
am 9b287368: am 6bdbae07: Merge "Fix issue #18665625 CTS:android.app.cts.InstrumentationTest#..." into lmp-mr1-dev automerge: 7557ec1
* commit '9b287368b05f36e322f339b82d2bb495f230ca50':
Fix issue #18665625 CTS:android.app.cts.InstrumentationTest#...
Diffstat (limited to 'core/java/android/content')
-rw-r--r-- | core/java/android/content/Intent.java | 23 |
1 files changed, 14 insertions, 9 deletions
diff --git a/core/java/android/content/Intent.java b/core/java/android/content/Intent.java index de7fbab..5ebbf16 100644 --- a/core/java/android/content/Intent.java +++ b/core/java/android/content/Intent.java @@ -4391,7 +4391,7 @@ public class Intent implements Parcelable, Cloneable { // scheme else if (uri.startsWith("scheme=", i)) { if (inSelector) { - intent.mData = Uri.parse(value); + intent.mData = Uri.parse(value + ":"); } else { scheme = value; } @@ -4461,14 +4461,19 @@ public class Intent implements Parcelable, Cloneable { String authority = null; intent.mPackage = data.substring(14, end); int newEnd; - if (end < data.length() && (newEnd=data.indexOf('/', end+1)) >= 0) { - // Found a scheme, remember it. - scheme = data.substring(end+1, newEnd); - end = newEnd; - if (end < data.length() && (newEnd=data.indexOf('/', end+1)) >= 0) { - // Found a authority, remember it. - authority = data.substring(end+1, newEnd); + if ((end+1) < data.length()) { + if ((newEnd=data.indexOf('/', end+1)) >= 0) { + // Found a scheme, remember it. + scheme = data.substring(end+1, newEnd); end = newEnd; + if (end < data.length() && (newEnd=data.indexOf('/', end+1)) >= 0) { + // Found a authority, remember it. + authority = data.substring(end+1, newEnd); + end = newEnd; + } + } else { + // All we have is a scheme. + scheme = data.substring(end+1); } } if (scheme == null) { @@ -7355,7 +7360,7 @@ public class Intent implements Parcelable, Cloneable { toUriInner(frag, scheme, defAction, defPackage, flags); if (mSelector != null) { - uri.append("SEL;"); + frag.append("SEL;"); // Note that for now we are not going to try to handle the // data part; not clear how to represent this as a URI, and // not much utility in it. |