Hi,

Committed.

Regards,
Jeroen

2007-06-21  Jeroen Frijters  <[EMAIL PROTECTED]>

        * java/io/ObjectStreamClass.java (getClassUID): Return 0L for
        enums and proxies.

Index: ObjectStreamClass.java
===================================================================
RCS file: /cvsroot/classpath/classpath/java/io/ObjectStreamClass.java,v
retrieving revision 1.48
diff -u -r1.48 ObjectStreamClass.java
--- ObjectStreamClass.java      10 Dec 2006 20:25:44 -0000      1.48
+++ ObjectStreamClass.java      21 Jun 2007 06:10:13 -0000
@@ -781,6 +781,14 @@
       result = cache.longValue();
     else
       {
+       // Note that we can't use Class.isEnum() here, because that returns
+       // false for java.lang.Enum and enum value sub classes.
+       if (Enum.class.isAssignableFrom(cl) || Proxy.isProxyClass(cl))
+         {
+           // Spec says that enums and dynamic proxies have
+           // a serialVersionUID of 0L.
+           return 0L;
+         }
         try
           {
             result = getClassUIDFromField(cl);


Reply via email to