summaryrefslogtreecommitdiffstats
path: root/luni
diff options
context:
space:
mode:
authorAndroid (Google) Code Review <android-gerrit@google.com>2009-09-30 17:50:18 -0400
committerAndroid (Google) Code Review <android-gerrit@google.com>2009-09-30 17:50:18 -0400
commit655cccb8a5447bfd6f3369d545870930a5f14b10 (patch)
treee23d62381bb12e9ca58a46d723540f07102311b6 /luni
parent7a7177010fe68e08d78045568dded4bd0406a237 (diff)
parent5905afbf06aa390d6e580d75f3e1419f9cf67472 (diff)
downloadlibcore-655cccb8a5447bfd6f3369d545870930a5f14b10.zip
libcore-655cccb8a5447bfd6f3369d545870930a5f14b10.tar.gz
libcore-655cccb8a5447bfd6f3369d545870930a5f14b10.tar.bz2
Merge change I9899be9d into eclair
* changes: Fixing a Harmony regression in ObjectInputStream.
Diffstat (limited to 'luni')
-rw-r--r--luni/src/main/java/java/io/ObjectInputStream.java8
1 files changed, 7 insertions, 1 deletions
diff --git a/luni/src/main/java/java/io/ObjectInputStream.java b/luni/src/main/java/java/io/ObjectInputStream.java
index 7dc87ff..6d24eb2 100644
--- a/luni/src/main/java/java/io/ObjectInputStream.java
+++ b/luni/src/main/java/java/io/ObjectInputStream.java
@@ -1323,7 +1323,13 @@ public class ObjectInputStream extends InputStream implements ObjectInput,
}
if (fieldDesc != null) {
if (toSet != null) {
- Class<?> fieldType = fieldDesc.getType();
+ // BEGIN android-changed
+ // Get the field type from the local field rather than
+ // from the stream's supplied data. That's the field
+ // we'll be setting, so that's the one that needs to be
+ // validated.
+ Class<?> fieldType = field.getTypeInternal();
+ // END android-added
Class<?> valueType = toSet.getClass();
if (!fieldType.isAssignableFrom(valueType)) {
throw new ClassCastException(Msg.getString(