1. 31 Dec, 2003 1 commit
    • 2003-12-31 Guilhem Lavaux <guilhem@kaffe.org> · eb813adf
      	* java/io/ObjectOutputStream.java
      	(putFields): Reindented. Fixed behaviour: currentPutField should be
      	null
      	before calling this method.
      	(writeFields): Likewise.
      	(markFieldsWritten): Fixed the exception message.
      	(callWriteMethod): Ensure currentPutField is null.
      	(getBooleanField): Translate IllegalArgumentException into
      	InvalidClassException.
      	(getByteField): Likewise.
      	(getCharField): Likewise.
      	(getDoubleField): Likewise.
      	(getFloatField): Likewise.
      	(getIntField): Likewise.
      	(getLongField): Likewise.
      	(getShortField): Likewise.
      	(getObjectField): Check the type code before returning the object.
      	(getField): Translate NoSuchFieldException into InvalidClassException
      	directly.
      
      From-SVN: r75265
      Guilhem Lavaux committed
  2. 30 Dec, 2003 1 commit
  3. 23 Dec, 2003 1 commit
    • 2003-12-23 Guilhem Lavaux <guilhem@kaffe.org> · 692fb023
      	* java/io/ObjectInputStream.java
      	(getField): Handle transient and non persistent fields.
      	(readClassDescriptor): Better error handling, use the right
      	class loader.
      	(readFields): Fields marked as not present in the stream
      	or not to be set are not read and set.
      	* java/io/ObjectInputStream.java
      	(readFields): Changed implementation of GetField.
      	(readClassDescriptor): Documented.
      	* java/io/ObjectOutputStream.java
      	(writeClassDescriptor): Added condition when to write class super
      	class information.
      
      From-SVN: r74985
      Guilhem Lavaux committed
  4. 26 Sep, 2003 1 commit
    • [multiple changes] · fc56f7ac
      2003-09-26  Sascha Brawer  <brawer@dandelis.ch>
      
      	* java/awt/image/SinglePixelPackedSampleModel.java (createDataBuffer):
      	Save space for some pixels at the buffer end.  Added Javadoc.
      
      2003-09-26  Tom Tromey  <tromey@redhat.com>
      
      	* java/io/ObjectOutputStream.java (writeFields): Fixed
      	indentation.
      	(putFields): Likewise.
      
      From-SVN: r71829
      Michael Koch committed
  5. 25 Sep, 2003 1 commit
  6. 01 Aug, 2003 2 commits
    • More for PR libgcj/11737: · e9c00e62
      	* java/io/ObjectInputStream.java (processResolution): Use
      	getMethod.
      	(getMethod): Make method accessible.
      	(getField): Make field accessible.
      	(setBooleanField): Don't call setAccessible here.
      	(setByteField, setCharField, setDoubleField, setFloatField,
      	setIntField, setLongField, setShortField, setObjectField):
      	Likewise.
      	(callReadMethod): Don't check whether method is null.  Catch
      	NoSuchMethodException.
      	* java/io/ObjectOutputStream.java (callWriteMethod): Initialize
      	cause on thrown exceptions.
      
      From-SVN: r70038
      Tom Tromey committed
    • re PR libgcj/11737 (java.io.ObjectOutputStream.writeObject does not work with HashMap) · f7fe97da
      	Fix for PR libgcj/11737:
      	* java/io/ObjectOutputStream.java (getMethod): Make method
      	accessible.
      	(getField): Likewise.
      	(writeObject): Use getMethod.
      	Import PrivilegedAction and AccessController.
      	(callWriteMethod): Don't check whether m is null.  Catch
      	NoSuchMethodException.
      
      From-SVN: r70035
      Tom Tromey committed
  7. 09 Jul, 2003 1 commit
  8. 25 Jun, 2003 1 commit
    • 2003-06-25 Michael Koch <konqueror@gmx.de> · 3cc9a95d
      	* java/io/ObjectInputStream.java
      	(readClassDescriptor): New method.
      	(readObject): Moved functionality to readClassDescriptor().
      	* java/io/ObjectOutputStream.java
      	(writeClassDescriptor): New method.
      	(writeObject): Moved functionality to writeClassDescriptor().
      
      From-SVN: r68465
      Michael Koch committed
  9. 28 Mar, 2003 1 commit
  10. 24 Mar, 2003 1 commit
    • DataInputStream.java (): Wrapped documentation line. · ffe4ebba
      2003-03-24  Michael Koch  <konqueror@gmx.de>
      
      	* java/io/DataInputStream.java
      	(): Wrapped documentation line.
      	(): Fixed @return tag.
      	* java/io/DataOutputStream.java
      	(written): Moved to top of class.
      	(all methods): Merged documentation from classpath.
      	* java/io/File.java:
      	Merged copyright year with classpath.
      	* java/io/FileInputStream.java
      	(all methods): Merged documentation from classpath.
      	* java/io/LineNumberReader.java
      	(getLineNumber): Fixed @return tag.
      	* java/io/ObjectInputStream.java.
      	Reformatted.
      	* java/io/ObjectOutputStream.java:
      	Reformatted, fixed some @see tags.
      	* java/io/OutputStreamWriter.java:
      	Deleted empty line.
      	* java/io/Writer.java:
      	Reformatted.
      
      From-SVN: r64780
      Michael Koch committed
  11. 14 Mar, 2003 1 commit
    • ObjectInputStream.java (readObject): Cleaned up the class hierarchy loop. · 70e2e8dc
      2003-02-14  Jeroen Frijters  <jeroen@sumatra.nl>
      
             * java/io/ObjectInputStream.java (readObject): Cleaned up the class
             hierarchy loop.
             (readFields(Object,ObjectStreamField[],boolean)): Changed argument
             list to Object,ObjectStreamClass, moved callReadMethod code up into
             readObject and added Class argument to all setXxxField calls.
             (callReadMethod): Changed Class argument to ObjectStreamClass to be
             consistent with ObjectOutputStream and to facilitate caching the
             Method in the future.
             (setBooleanField): Added Class argument.
             (setByteField): Likewise.
             (setCharField): Likewise.
             (setDoubleField): Likewise.
             (setFloatField): Likewise.
             (setIntField): Likewise.
             (setLongField): Likewise.
             (setShortField): Likewise.
             (setObjectField): Likewise.
             * java/io/ObjectOutputStream.java (writeObject): Cleaned up the
             class hierarchy loop.
             (defaultWriteObject): Call writeFields with new argument list.
             (writeFields(Object,ObjectStreamField[],boolean): Changed argument
             list to Object,ObjectStreamClass, moved callWriteMethod up into
             writeObject and added Class argument to all getXxxField calls.
             (callWriteMethod): Added ObjectStreamClass argument to be able to
             get the proper class to call getMethod on (each class can have (or
             not have) its own writeObject method).
             (getBooleanField): Added Class argument.
             (getByteField): Likewise.
             (getCharField): Likewise.
             (getDoubleField): Likewise.
             (getFloatField): Likewise.
             (getIntField): Likewise.
             (getLongField): Likewise.
             (getShortField): Likewise.
             (getObjectField): Likewise.
             * java/io/ObjectStreamClass.java (hasReadMethod): Added method to
             facilitate caching the Method object in the future.
      
      From-SVN: r64351
      Jeroen Frijters committed
  12. 01 Mar, 2003 1 commit
  13. 28 Feb, 2003 1 commit
    • Makefile.am (nat_source_files): Remove java/io/natObjectOutputStream.cc. · 4480b3dc
              * Makefile.am (nat_source_files): Remove
              java/io/natObjectOutputStream.cc.
              * Makefile.in: Regenerated.
              * mauve-libgcj: Don't exclude java.io.ObjectInputOutput tests.
              * java/io/ObjectStreamField.java (typename): New field.
              (ObjectStreamField(String, Class)): Initialize new field.
              (ObjectStreamField(String, String)): New Constructor.
              (getTypeCode): Use new field.
              (getTypeString): Use new field.
              * java/io/ObjectOutputStream.java (writeObject): Rethrow fatal
              ObjectStreamExceptions. Remember and reset old BlockDataMode.
              Handle reading of Proxy classes. Never drain(), just write
              TC_ENDBLOCKDATA. Rethrow ObjectStreamExceptions.
              (drain): Check writeDataAsBlocks before calling writeBlockDataHeader.
              (flush): Call flush(), not just drain().
              (writeBoolean): Always use blockDataOutput.
              (writeByte): Likewise.
              (writeShort): Likewise.
              (writeChar): Likewise.
              (writeInt): Likewise.
              (writeLong): Likewise.
              (writeFloat): Likewise.
              (writeDouble): Likewise.
              (writeBytes): Likewise.
              (putfield (put(String,Object))): Throw IllegalArgumentException if
              field cannot be found.
              (putfield (write(ObjectOutput))): Remember old BlockDataMode.
              (writeArraySizeAndElements): Write byte[] in one go.
              (writeFields): Write TC_ENDBLOCKDATA when call_write_method, otherwise
              set BlockDataMode to false.
              (annotateProxyClass): New method.
              (defaultProtocolVersion): Now defaults to PROTOCOL_VERSION_2
              (getField): No longer native.
              (getMethod): Likewise.
              (setBlockDataMode): Always drain() on switch, return old mode.
              (static): New static code block.
              * java/io/natObjectOutputStream.cc: Removed.
              * java/io/ObjectInputStream.java (getField): No longer native.
              (getMethod): Likewise.
              (readObject): Remember and reset old BlockDataMode. Track whether
              object is consumed. Handle TC_ENDBLOCKDATA, TC_PROXYCLASSDESC and
              TC_LONGSTRING.
              (defaultReadObject): Set BlockDataMode to false during readFields.
              (resolveClass): Create new SecurityManager if necessary.
              Use Class.forName() if null ClassLoader found.
              (read(byte[],int,int): Copy remaining bytes to data before calling
              readNextBlock().
              (readFields): Set and reset BlockDataMode on call_read_method.
              Catch NoSuchFieldErrors.
              (setBlockDataMode): Return old mode.
              (static): New static code block.
              * java/io/natObjectInputStream.cc (getField): Removed.
              (getMethod): Likewise.
      
      From-SVN: r63556
      Mark Wielaard committed
  14. 22 Jan, 2002 1 commit
  15. 21 Dec, 2001 1 commit
  16. 27 Jan, 2001 1 commit
    • ObjectInputStream.java (read): AND byte with 0xff to make result unsigned. · 60b7365f
      	* java/io/ObjectInputStream.java (read): AND byte with 0xff to make
      	result unsigned.
      	(read (byte[], int, int)): Only call readNextBlock() if the block
      	buffer would actually be overrun. Increment blockDataPosition.
      	(callReadMethod): Propagate exceptions from invocation target.
      	* java/io/ObjectOutputStream.java (callWriteMethod): Propagate
      	exceptions from invocation target.
      
      From-SVN: r39293
      Bryce McKinlay committed
  17. 05 Oct, 2000 1 commit
    • Makefile.am: Removed java/io/Replaceable.java and java/io/Resolvable.java. · bf347805
      	* Makefile.am: Removed java/io/Replaceable.java and
      	java/io/Resolvable.java.
      	* Makefile.in: Rebuilt.
      	* gcj/javaprims.h: Removed Replaceable and Resolvable from java.io
      	namespace.
      	* java/io/ObjectInputStream.java (processResolution): Fixed typo
      	in method name.
      	(processResolution): Handle readResolve method via reflection with
      	removal of Resolvable interface.
      	* java/io/ObjectOutputStream.java (writeObject): Handle writeReplace
      	method via reflection with removal of Replaceable interface.
      	* java/io/Replaceable.java: Removed.
      	* java/io/Resolvable.java: Removed.
      	* java/security/Key.java (serialVersionUID): New field.
      	* java/security/Provider.java (serialVersionUID): New field.
      	* java/security/interfaces/DSAPrivateKey.java (serialVersionUID):
      	New field.
      	* java/security/interfaces/DSAPublicKey.java (serialVersionUID):
              New field.
      	* java/sql/DataTruncation.java (serialVersionUID): New field.
      	* java/sql/SQLException.java (serialVersionUID): New field.
      	* java/sql/SQLWarning.java (serialVersionUID): New field.
      	* java/util/Date.java (serialVersionUID): New field.
      	(millis): Made transient.
      	(readObject): New method.
      	(writeObject): New method.
      
      Serialization mods.
      Note:  The interfaces java.io.Replaceable and java.io.Resolvable were only
      temporary additions to JDK 1.2 beta versions and were not included
      in the JDK 1.2 final.  The Serialization spec instructs how to deal
      with their methods (via reflection).
      
      From-SVN: r36736
      Warren Levy committed
  18. 08 Sep, 2000 1 commit
    • PropertyChangeEvent.java (serialVersionUID): Added. · bc6ccd33
      	* java/beans/PropertyChangeEvent.java (serialVersionUID): Added.
      	* java/beans/PropertyVetoException.java (serialVersionUID): Added.
      	* java/io/File.java (writeObject): Added.
      	(readObject): Added.
      	(serialVersionUID): Added.
      	* java/io/ObjectOutputStream.java (writeObject): Initialized
      	fieldsAlreadyWritten before recursion rather than after.
      	* java/io/ObjectStreamClass.java (serialVersionUID): Added.
      	* java/io/OptionalDataException.java (serialVersionUID): Added.
      	(OptionalDataException): Made package private.
      	* java/io/SyncFailedException.java (SyncFailedException): Removed
      	default constructor to match spec.
      	* java/lang/Boolean.java (serialVersionUID): Added.
      	* java/lang/Byte.java (serialVersionUID): Added.
      	* java/lang/Character.java (serialVersionUID): Added.
      	* java/lang/Double.java (serialVersionUID): Added.
      	* java/lang/Float.java (serialVersionUID): Added.
      	* java/lang/Integer.java (serialVersionUID): Added.
      	* java/lang/Long.java (serialVersionUID): Added.
      	* java/lang/Number.java (serialVersionUID): Added.
      	* java/lang/Short.java (serialVersionUID): Added.
      	* java/lang/String.java (serialVersionUID): Added.
      	* java/lang/ThreadDeath.java (ThreadDeath): Removed constructor
      	to match spec.
      	* java/lang/reflect/InvocationTargetException.java
      	(serialVersionUID): Added.
      	* java/net/URL.java (handler): Made transient.
      	(hashCode): Added field for serialization, per spec. and use
      	cached value if available.
      	(serialVersionUID): Added.
      	(URL): Initialize hashCode.
      	(set): Adjust hashCode.
      	(readObject): New Method to initialize the protocol handler when
      	deserializing.
      	(writeObject): New method.
      	* java/text/BreakIterator.java: Removed 'implements Serializable'.
      	* java/text/Collator.java: Removed 'implements Serializable'.
      	* java/util/GregorianCalendar.java (serialVersionUID): Added.
      	* java/util/Properties.java (serialVersionUID): Added.
      	* java/util/Random.java (serialVersionUID): Added.
      	(seed): Made private.
      	(nextNextGaussian): Made private.
      	(haveNextNextGaussian): Made private.
      	* java/util/Stack.java (serialVersionUID): Added.
      	* java/util/TimeZone.java (serialVersionUID): Added.
      	* java/util/Vector.java (serialVersionUID): Added.
      
      Serialization mods.
      
      From-SVN: r36272
      Warren Levy committed
  19. 04 Aug, 2000 1 commit
    • ObjectInputStream.java (readFields): Turn off readDataFromBlock while reading via GetField. · 9b4773cb
      	* java/io/ObjectInputStream.java (readFields): Turn off
      	readDataFromBlock while reading via GetField.
      	(GetField$1.get(String, Object)): Pass Class of default value to
      	getField.
      	(getField): Allow for null default values.
      
      	* java/io/ObjectOutputStream.java: Fixed typo in comment.
      	(PutField$1.put): Fixed calls of checkType in most of the put
      	methods to pass the correct parameter.
      	(PutField$1.put(String, Object)): Allow for null value arg.
      	(PutField$1.write): Turn off writeDataAsBlocks while writing via
      	PutField.
      
      	* java/io/ObjectStreamClass.java (serialPersistentFields): Fixed
      	typo in spec'ed field name.
      	(getSerialPersistentFields): Changed spelling of method to match
      	the correct spelling of the spec'ed field name.
      
      More serialization fixes per Mauve errors.
      
      From-SVN: r35468
      Warren Levy committed
  20. 28 Jul, 2000 1 commit
  21. 27 Jul, 2000 1 commit
    • mauve-libgcj: Activated serialization tests. · 7db51521
      	* mauve-libgcj: Activated serialization tests.
      	* gcj/field.h (getModifiers): Mask off unknown flags.
      	* gnu/java/security/provider/SHA.java (munch): Reset buffer to 0 so
      	spurious bits don't cause discrepancies.
      	* java/io/ObjectOutputStream.java: Fixed typo in comment.
      	* java/io/ObjectStreamClass.java: Fixed typos in comments.
      	(lookup): Applied patch from Brian Jones <cbj@gnu.org> to optimize.
      	(hasClassInitializer): Call getDeclaredMethod instead of getMethod.
      	* java/lang/Throwable.java (serialVersionUID): New field.
      	* java/lang/reflect/Modifier.java (ALL_FLAGS): Preserve STRICT if used.
      	* java/lang/reflect/natConstructor.cc (getModifiers): Mask off
      	unknown flags.
      	* java/lang/reflect/natMethod.cc: Ditto.
      	* java/security/Key.java (serialVersionUID): Removed field for now.
      	* java/security/interfaces/DSAPrivateKey.java (serialVersionUID): Ditto.
      	* java/security/interfaces/DSAPublicKey.java (serialVersionUID): Ditto.
      
      Serialization mods.
      
      From-SVN: r35302
      Warren Levy committed
  22. 24 May, 2000 1 commit
  23. 19 May, 2000 1 commit