summaryrefslogtreecommitdiff
path: root/java/io/ObjectInputStream.java
diff options
context:
space:
mode:
authorAndrew John Hughes <gnu_andrew@member.fsf.org>2006-08-12 13:27:52 +0000
committerAndrew John Hughes <gnu_andrew@member.fsf.org>2006-08-12 13:27:52 +0000
commit32bb0e9c211961fbade190535b8041ece5df772c (patch)
tree0c38bf4c10cc99e5da5d47c2830efb3c8e81d2a5 /java/io/ObjectInputStream.java
parentd2f33039bd87de27b08ce88a7865d499b9b64c82 (diff)
downloadclasspath-32bb0e9c211961fbade190535b8041ece5df772c.tar.gz
2006-08-12 Andrew John Hughes <gnu_andrew@member.fsf.org>
* Merge of HEAD --> generics-branch for release 0.92 to 2006/08/12.
Diffstat (limited to 'java/io/ObjectInputStream.java')
-rw-r--r--java/io/ObjectInputStream.java9
1 files changed, 6 insertions, 3 deletions
diff --git a/java/io/ObjectInputStream.java b/java/io/ObjectInputStream.java
index 18ff95f05..98632607c 100644
--- a/java/io/ObjectInputStream.java
+++ b/java/io/ObjectInputStream.java
@@ -547,8 +547,6 @@ public class ObjectInputStream extends InputStream
flags, fields);
assignNewHandle(osc);
- ClassLoader callersClassLoader = currentLoader();
-
for (int i = 0; i < field_count; i++)
{
if(dump) dumpElement(" TYPE CODE=");
@@ -568,12 +566,17 @@ public class ObjectInputStream extends InputStream
class_name = String.valueOf(type_code);
fields[i] =
- new ObjectStreamField(field_name, class_name, callersClassLoader);
+ new ObjectStreamField(field_name, class_name);
}
/* Now that fields have been read we may resolve the class
* (and read annotation if needed). */
Class clazz = resolveClass(osc);
+ ClassLoader loader = clazz.getClassLoader();
+ for (int i = 0; i < field_count; i++)
+ {
+ fields[i].resolveType(loader);
+ }
boolean oldmode = setBlockDataMode(true);
osc.setClass(clazz, lookupClass(clazz.getSuperclass()));
classLookupTable.put(clazz, osc);