Hi,

I committed the attached patch to fix proxy deserialization (bug 24422).

Regards,
Jeroen

2005-10-18  Jeroen Frijters  <[EMAIL PROTECTED]>

        * java/io/ObjectInputStream.java
        (parseContent): Removed bogus println and fixed bug #24422.
Index: java/io/ObjectInputStream.java
===================================================================
RCS file: /cvsroot/classpath/classpath/java/io/ObjectInputStream.java,v
retrieving revision 1.69
diff -u -r1.69 ObjectInputStream.java
--- java/io/ObjectInputStream.java      12 Oct 2005 19:41:42 -0000      1.69
+++ java/io/ObjectInputStream.java      18 Oct 2005 07:17:29 -0000
@@ -221,7 +221,6 @@
          for (int i = 0; i < n_intf; i++)
            {
              intfs[i] = this.realInputStream.readUTF();
-             System.out.println(intfs[i]);
            }
          
          boolean oldmode = setBlockDataMode(true);
@@ -229,6 +228,21 @@
          setBlockDataMode(oldmode);
          
          ObjectStreamClass osc = lookupClass(cl);
+          if (osc.firstNonSerializableParentConstructor == null)
+            {
+              osc.realClassIsSerializable = true;
+              osc.fields = osc.fieldMapping = new ObjectStreamField[0];
+              try
+                {
+                  osc.firstNonSerializableParentConstructor =
+                    Object.class.getConstructor(new Class[0]);
+                }
+              catch (NoSuchMethodException x)
+                {
+                  throw (InternalError)
+                    new InternalError("Object ctor missing").initCause(x);
+                }
+            }
          assignNewHandle(osc);
          
          if (!is_consumed)
_______________________________________________
Classpath-patches mailing list
Classpath-patches@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath-patches

Reply via email to