summaryrefslogtreecommitdiffstats
path: root/core/java/android/util
diff options
context:
space:
mode:
authorCalin Juravle <calin@google.com>2014-02-18 19:08:39 +0000
committerCalin Juravle <calin@google.com>2014-02-18 19:19:15 +0000
commit8fbcc6b4cdeed1ad119c28327a0f4f0a579cd24b (patch)
tree0e6f559e7c68dc9fdd7498c1910051c83234db44 /core/java/android/util
parenta14d9c318a1d358902a76aff733303c5509bb5fc (diff)
downloadframeworks_base-8fbcc6b4cdeed1ad119c28327a0f4f0a579cd24b.zip
frameworks_base-8fbcc6b4cdeed1ad119c28327a0f4f0a579cd24b.tar.gz
frameworks_base-8fbcc6b4cdeed1ad119c28327a0f4f0a579cd24b.tar.bz2
Fixed a possible infinite loop in JsonReader#skipValue()
Bug: https://code.google.com/p/android/issues/detail?id=65846 Change-Id: Idaa0e75fc5612550c4b9ccb9afa5535ea5b189df
Diffstat (limited to 'core/java/android/util')
-rw-r--r--core/java/android/util/JsonReader.java3
1 files changed, 3 insertions, 0 deletions
diff --git a/core/java/android/util/JsonReader.java b/core/java/android/util/JsonReader.java
index f2a86c9..7d1c6c4 100644
--- a/core/java/android/util/JsonReader.java
+++ b/core/java/android/util/JsonReader.java
@@ -546,6 +546,9 @@ public final class JsonReader implements Closeable {
public void skipValue() throws IOException {
skipping = true;
try {
+ if (!hasNext() || peek() == JsonToken.END_DOCUMENT) {
+ throw new IllegalStateException("No element left to skip");
+ }
int count = 0;
do {
JsonToken token = advance();