| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
ObjectStreamExceptions.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(annotateClass): Likewise.
(annotateProxyClass): Likewise.
(write): Likewise.
* (callWriteMethod): No longer native.
* (getBooleanField): Likewise.
* (getByte): Likewise.
* (getCharField): Likewise.
* (getDoubleField): Likewise.
* (getFloatField): Likewise.
* (getIntField): Likewise.
* (getLongField): Likewise.
* (getShortField): Likewise.
* (getObjectField): Likewise.
* native/jni/java-io/java_io_ObjectOutputStream.c: Removed.
* native/jni/java-io/Makefile.am (libjavaio_la_SOURCES): Remove
java_io_ObjectOutputStream.c.
|
|
|
|
|
| |
* java/io/ObjectOuputStream.java:
Reformated, no code or documentation changes.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* java/io/ObjectStreamClass.java (isProxyClass): Now a field.
(setClass): Throws InvalidClassException.
(setSuperclass): Use getClassUID if not a proxy Class.
(setFields): Make sure to call setAccessible(true).
(setUID): Renamed to...
(getClassUID): Return the uid. Call setAccessible(true) for field.
Fall back to Gnu provider SHA algorithm if necessary.
(getDefinedSUID): Removed method.
(hasClassInitializer): Don't throw NoSuchMethodError.
(static): Removed.
* java/io/ObjectOutputStream.java (writeObject): Use isProxyClass.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The following changes are all from patch submissions from Intel's
ORP team to get Classpath into a JBOSS compatible state. This
is primarily just the non-public API patches.
* java/io/BufferedOutputStream.java (flush): after writing out the
current buffer contents flush the underlying output stream
* java/io/File.java
(File(String,String)): make use of gnu.java.io.PlatformHelper; avoid
possible double separator char when setting path
(getName): make use of gnu.java.io.PlatformHelper
(getAbsolutePath): make use of PlatformHelper; avoid possible
double separator char if user.dir ends with separator
(getCanonicalPath): mostly replaced with call to
gnu.java.io.PlatformHelper.toCanonicalForm()
(getParent): make use of gnu.java.io.PlatformHelper
(isAbsolute): make use of gnu.java.io.PlatformHelper when checking
root prefix
(mkdir): make use of gnu.java.io.PlatformHelper to consolidate
removal of trailing separator character
(list): ditto
(toURL): add trailing separator for directory
* java/io/ObjectInputStream.java (readObject): place code in
finally clause to it always executes
(defaultReadObject): change block data mode before/after read
(resolveProxyClass): formatting
(read): modified algorithm, needs testing
(readBoolean): change block data mode as needed
(readByte): ditto
(readUnsignedByte): ditto
(readShort): ditto
(readUnsignedShort): ditto
(readChar): ditto
(readInt): ditto
(readLong): ditto
(readFloat): ditto
(readDouble): ditto
(readFields): change block data mode preserving old mode
(readFields): ditto; catch NoSuchFieldError and dump error message
(dump): set field to false by default to avoid debug messages
* java/io/ObjectOutputStream.java (writeObject): save old mode before
unsetting block data mode. Handle proxy classes writing instances of
Class
(annotateProxyClass): new method
(drain): conditionally write block data header
(close): flush stream before closing
(writeBoolean): blockDataOutput instead of dataOutput
(writeByte): ditto
(writeShort): ditto
(writeChar): ditto
(writeInt): ditto
(writeLong): ditto
(writeFloat): ditto
(writeDouble): ditto
(put): throw IllegalArgumentException if field not found
(write): save and reset block data mode
(writeArraySizeAndElements): optimize byte array case
(writeFields): save and reset block data mode; call
ObjectStreamField.getTypeString instead of
TypeSignature.getEncodingOfClass
(setBlockDataMode): added call to drain() and return boolean oldmode
* java/io/ObjectStreamClass.java
(lookup): call lookupForClassObject
(lookupForClassObject): new method
(isProxyClass): new method
(setClass): set _isProxyClass
(ObjectStreamClass): set _isProxyClass; only set UID if serializable
(setFields): code to interoperate with JDK if Throwable serialized
form is not the same as the Java API, but commented out
* java/io/ObjectStreamConstants.java:
(TC_LONGSTRING): new constant
(TC_PROXYCLASSDESC): new constant
* java/io/ObjectStreamField.java (ObjectStreamField): store typename
(ObjectStreamField): new package private constructor for cases
where access to a Class is not available
(getTypeCode): use stored type name
(getTypeString): ditto
* java/io/PushbackInputStream.java (available): calculate available
correctly
(read): recalculate numBytes
(skip): skip ahead only the amount available that is already read
* java/security/DigestOutputStream.java
(write): use out.write instead of super.write
* java/security/MessageDigest.java (update): use offset
* java/security/PermissionCollection.java (static): do not override
private linesep
(toString): indicate readonly and output PermissionCollection
* java/security/Permissions.java (add): add perm to allPermissions
(add): do nothing if permission already added
* java/security/Policy.java (static): added static initializer to
create policy
* java/security/ProtectionDomain.java (toString): output
ProtectionDomain
* java/security/SecureClassLoader.java (SecureClassLoader): FIXME
removed, call SecurityManager.checkCreateClassLoader
(SecureClassLoader): call SecurityManager.checkCreateClassLoader
* java/net/InetAddress.java (serialVersionUID): needed for
serialization compatibility
(hostname): renamed hostName
(hostname_alias): changed to transient
(my_ip[]): ditto
(lookup_time): ditto
(address): new field for serialization
(family): ditto
(getHostName): use changed variable name hostName
(InetAddress): set family and address
* java/net/JarURLConnection.java (JarURLConnection): correct getting
of embedded URL
* java/net/PlainSocketImpl.java (available): implement natively
(getOption): do not synchronize
(setOption): ditto
(connect): ditto
(close): ditto
* java/net/URL.java (authority): new field
(userInfo): new transient field
(ph): changed to transient
(URL): removed previous hack of treating the spec URL as a file
to append to the context
(sameFile): missing brackets and incorrect formatting for the given
code make this a great catch
(writeObject): new method
(readObject): new method, throw IOException for unhandled protocol
(getPath): new method (1.3 spec)
* java/net/URLClassLoader.java (findClass): handled jars better
(findResource): treat as directory if it does not end with .zip or .jar
(getURLs): pass unnamed array of the appropriate size to toArray
* java/net/URLStreamHandler.java: import gnu.java.io.PlatformHelper
(parseURL): simplifying method
* java/rmi/MarshalledObject.java (MarshalledObject): implemented
(equals): implemented
(get): implemented
(hashCode): implemented
* java/rmi/server/RMIClassLoader.java
(MyClassLoader): new constructor
(static): initialize state
(loadClass): reimplemented; I think the new method may inappropriately
miss the use of tok in caching loaders which also means not checking
for the loader correctly
(getClassAnnotation): implemented
* include/java_net_PlainSocketImpl.h: need to write native method
available
|
| |
|
|
|
|
|
|
| |
correct security check.
* java/io/ObjectOutputStream.java (enableReplaceObject): Use
correct security check.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* gnu/java/awt/image/GdkPixbufDecoder.java: wrapped loadLibrary
call within if (Configuration.INIT_LOAD_LIBRARY)
* gnu/java/awt/peer/gtk/GtkToolkit.java: same
* java/io/File.java: same
* java/io/FileDescriptor.java: same
* java/io/FileInputStream.java: same
* java/io/FileOutputStream.java: same
* java/io/ObjectInputStream.java: same
* java/io/ObjectOutputStream.java: same
* java/io/ObjectStreamClass.java: same
* java/io/RandomAccessFile.java: same
* java/lang/Double.java: same
* java/lang/Float.java: same
* java/lang/Math.java: same
* java/lang/Object.java: same
* java/lang/System.java: same
* java/lang/reflect/Array.java: same
* java/math/BigInteger.java: same
* java/net/InetAddress.java: same
* java/net/PlainDatagramSocketImpl.java: same
* java/net/PlainSocketImpl.java: same
* java/util/ResourceBundle.java: same
* java/util/TimeZone.java: same
* vm/reference/java/lang/Throwable.java: remove unused loadLibrary
call, VMs typically statically link these native methods instead.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* ObjectInputStream.java (processResolution): Fixed typo
in method name.
(processResolution): Handle readResolve method via reflection with
removal of Resolvable interface.
* ObjectOutputStream.java (writeObject): Handle writeReplace
method via reflection with removal of Replaceable interface.
* Replaceable.java: Removed.
* Resolvable.java: Removed.
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).
|
|
|
|
|
|
|
|
|
| |
* java/beans/PropertyVetoException.java (serialVersionUID): Added.
* java/io/ObjectOutputStream.java (writeObject): Initialized
fieldsAlreadyWritten before recursion rather than after.
* java/io/ObjectStreamClass.java (serialVersionUID): Added.
Serialization mods merged from libgcj.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
readDataFromBlock while reading via GetField.
(GetField$1.get(String, Object)): Pass Class of default value to
getField.
(getField): Allow for null default values.
* 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.
* 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 results.
|
|
|
|
| |
NotSerializableException with just the class name.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
spurious bits don't cause discrepancies.
* ObjectOutputStream.java: Fixed typo in comment.
* ObjectStreamClass.java: Merged with libgcj.
Fixed typos in comments.
(lookup): Applied patch from Brian Jones <cbj@gnu.org> to optimize.
(getDefinedSUID): Removed native method.
(getSerialPersistantFields): Removed native method.
(hasClassInitializer): Removed native method.
* Makefile.am: Removed reference to java_io_ObjectStreamClass.c.
Serialization mods.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(newVal): Renamed to newValue.
* java/beans/PropertyVetoException.java (changeEvent): Renamed to evt.
* java/beans/beancontext/BeanContextServiceRevokedEvent.java
(revokeNow): Renamed to invalidateRefs.
* java/io/ObjectOutputStream.java (writeObject): Use component type
when writing arrays.
Fixed typo.
* java/io/WriteAbortedException.java (message): Made transient.
Serialization mods per the JDK spec:
http://java.sun.com/products/jdk/1.2/docs/api/serialized-form.html
|
|
|
|
| |
Fix copyright years.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
all usage of OSCField to ObjectStreamField.
|
|
|
|
|
| |
implementation and selecting the protocol to use. Changed usage of
`java.lang.reflect.Field' to `java.io.OSCField'.
|
| |
|
| |
|
|
Modified Makefiles to included added subdirectories.
|