summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author William Loh <wloh@google.com> 2024-06-03 12:56:47 -0700
committer Cherrypicker Worker <android-build-cherrypicker-worker@google.com> 2024-06-13 23:05:34 +0000
commit476c54537001be12db5a6fd7efcfee66de4aa6ec (patch)
treeff0a59ace089643c4da7e59acc2edf4c0eddb14c
parent3f64c6a2353ed91165314ecd0dfdc48c853cb707 (diff)
Fail parseUri if end is missing
Bug: 318683126 Test: atest IntentTest Flag: EXEMPT bugfix (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:b85bee508793e31d6fe37fc9cd4e8fa3787113cc) Merged-In: I5f619ced684ff505ce2b7408cd35dd3e9be89dea Change-Id: I5f619ced684ff505ce2b7408cd35dd3e9be89dea
-rw-r--r--core/java/android/content/Intent.java3
1 files changed, 3 insertions, 0 deletions
diff --git a/core/java/android/content/Intent.java b/core/java/android/content/Intent.java
index ec94ebef99c6..1c080e527413 100644
--- a/core/java/android/content/Intent.java
+++ b/core/java/android/content/Intent.java
@@ -7864,6 +7864,9 @@ public class Intent implements Parcelable, Cloneable {
int eq = uri.indexOf('=', i);
if (eq < 0) eq = i-1;
int semi = uri.indexOf(';', i);
+ if (semi < 0) {
+ throw new URISyntaxException(uri, "uri end not found");
+ }
String value = eq < semi ? Uri.decode(uri.substring(eq + 1, semi)) : "";
// action