From 92cfe8169355ff6c2da9416a366cf9f73f05bf6c Mon Sep 17 00:00:00 2001 From: tromey Date: Fri, 9 Mar 2001 01:35:54 +0000 Subject: * java/io/ObjectStreamClass.java (setUID): Don't write interface info for array classes. Fixes PR libgcj/1971. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@40337 138bc75d-0d04-0410-961f-82ee72b054a4 --- libjava/java/io/ObjectStreamClass.java | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) (limited to 'libjava/java/io') diff --git a/libjava/java/io/ObjectStreamClass.java b/libjava/java/io/ObjectStreamClass.java index d7306f81b74..eca172a4e39 100644 --- a/libjava/java/io/ObjectStreamClass.java +++ b/libjava/java/io/ObjectStreamClass.java @@ -444,11 +444,15 @@ public class ObjectStreamClass implements Serializable | Modifier.INTERFACE | Modifier.PUBLIC); data_out.writeInt (modifiers); - Class[] interfaces = cl.getInterfaces (); - Arrays.sort (interfaces, interfaceComparator); - for (int i=0; i < interfaces.length; i++) - data_out.writeUTF (interfaces[i].getName ()); - + // Pretend that an array has no interfaces, because when array + // serialization was defined (JDK 1.1), arrays didn't have it. + if (! cl.isArray ()) + { + Class[] interfaces = cl.getInterfaces (); + Arrays.sort (interfaces, interfaceComparator); + for (int i=0; i < interfaces.length; i++) + data_out.writeUTF (interfaces[i].getName ()); + } Field field; Field[] fields = cl.getDeclaredFields (); -- cgit v1.2.3