diff options
author | Bryce McKinlay <mckinlay@redhat.com> | 2004-07-23 21:46:09 +0000 |
---|---|---|
committer | Bryce McKinlay <bryce@gcc.gnu.org> | 2004-07-23 22:46:09 +0100 |
commit | ae066484dfc4edafddbcf5089720d8ceef28c232 (patch) | |
tree | 01764308a3b2de375dfb7a5cbdc207490adea0e1 /libjava | |
parent | 30678c3e48d4df52e33e57bfe3da0338fcbb8ed9 (diff) | |
download | gcc-ae066484dfc4edafddbcf5089720d8ceef28c232.zip gcc-ae066484dfc4edafddbcf5089720d8ceef28c232.tar.gz gcc-ae066484dfc4edafddbcf5089720d8ceef28c232.tar.bz2 |
ObjectStreamField (ObjectStreamField): Don't unset 'toset' for final fields.
2004-07-23 Bryce McKinlay <mckinlay@redhat.com>
* java/io/ObjectStreamField (ObjectStreamField): Don't unset 'toset'
for final fields.
* testsuite/libjava.lang/Serialization.java: New test.
* testsuite/libjava.lang/Serialization.out: New.
From-SVN: r85096
Diffstat (limited to 'libjava')
-rw-r--r-- | libjava/ChangeLog | 9 | ||||
-rw-r--r-- | libjava/java/io/ObjectStreamField.java | 1 | ||||
-rw-r--r-- | libjava/testsuite/libjava.lang/Serialization.java | 32 | ||||
-rw-r--r-- | libjava/testsuite/libjava.lang/Serialization.out | 3 |
4 files changed, 43 insertions, 2 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog index 502d3e8..8cb5ecb 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,4 +1,11 @@ -2004-07-23 Mark Wielaard <mark@klomp.org> +2004-07-23 Bryce McKinlay <mckinlay@redhat.com> + + * java/io/ObjectStreamField (ObjectStreamField): Don't unset 'toset' for final + fields. + * testsuite/libjava.lang/Serialization.java: New test. + * testsuite/libjava.lang/Serialization.out: New. + +2004-07-23 Bryce McKinlay <mckinlay@redhat.com> * gnu/java/net/DefaultContentHandlerFactory.java: Check in real file missed in last commit. diff --git a/libjava/java/io/ObjectStreamField.java b/libjava/java/io/ObjectStreamField.java index 830a349..ab7c934 100644 --- a/libjava/java/io/ObjectStreamField.java +++ b/libjava/java/io/ObjectStreamField.java @@ -65,7 +65,6 @@ public class ObjectStreamField implements Comparable { this (field.getName(), field.getType()); this.field = field; - toset = !Modifier.isFinal(field.getModifiers()); } /** diff --git a/libjava/testsuite/libjava.lang/Serialization.java b/libjava/testsuite/libjava.lang/Serialization.java new file mode 100644 index 0000000..8178753 --- /dev/null +++ b/libjava/testsuite/libjava.lang/Serialization.java @@ -0,0 +1,32 @@ +import java.io.*; +import java.util.*; + +public class Serialization +{ + public static void main(String[] args) + throws IOException, ClassNotFoundException + { + File f = new File("test.ser"); + ObjectOutputStream objStream = + new ObjectOutputStream(new FileOutputStream(f)); + objStream.writeInt(8); + objStream.writeObject(new Integer(99)); + List l = new LinkedList(); + l.add(new Integer(1)); + l.add(new Short((short) 7)); + l.add(new Float(9.95)); + l.add(new Long(-900000000000001l)); + l.add(new Double(-3.14159)); + l.add(new Character('X')); + l.add(new Byte((byte) 'z')); + objStream.writeObject(l); + objStream.close(); + + ObjectInputStream ois = new ObjectInputStream(new FileInputStream(f)); + System.out.println (ois.readInt()); + System.out.println (ois.readObject()); + System.out.println (ois.readObject()); + ois.close(); + f.delete(); + } +} diff --git a/libjava/testsuite/libjava.lang/Serialization.out b/libjava/testsuite/libjava.lang/Serialization.out new file mode 100644 index 0000000..9c4e5d0 --- /dev/null +++ b/libjava/testsuite/libjava.lang/Serialization.out @@ -0,0 +1,3 @@ +8 +99 +[1, 7, 9.95, -900000000000001, -3.14159, X, 122] |