2005-12-24  David Daney <ddaney@avtrex.com>
	    Tom Tromey  <tromey@redhat.com>

	PR libgcj/9715, PR libgcj/19132:
	* java/nio/charset/Charset.java (charsetForName): Try default
	provider first.
	(availableCharsets): Re-merged.
	(providers2): Likewise.
	(defaultCharset): Likewise.
	* sources.am, Makefile.in: Rebuilt.
	* gnu/java/nio/charset/Provider.java: Removed.
	* java/io/OutputStreamWriter.java
	(OutputStreamWriter(OutputStream,Charset)): New constructor.
	(OutputStreamWriter(OutputStream,CharsetEncoder)): Likewise.
	* java/io/InputStreamReader.java
	(InputStreamReader(InputStream,CharsetDecoder)): New constructor.
	(InputStreamReader(InputStream,Charset)): Likewise.
	* gnu/gcj/convert/BytesToUnicode.java (getDecoder): Try a
	BytesToCharsetAdaptor.
	* gnu/gcj/convert/UnicodeToBytes.java (getEncoder): Try a
	CharsetToBytesAdaptor.
	* gnu/gcj/convert/CharsetToBytesAdaptor.java: New file.
	* gnu/gcj/convert/BytesToCharsetAdaptor.java: New file.
	* mauve-libgcj: Remove getEncoding exclusion.

2005-12-28  Anthony Green  <green@redhat.com>

	* gnu/java/net/natPlainSocketImplWin32.cc (connect): Same 
	as previous patch, but for win32.

2005-12-28  Anthony Green  <green@redhat.com>

	* gnu/java/net/natPlainSocketImplPosix.cc (connect): Record
	address and port before attempting anything.

2005-12-28  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>

	* sysdep/pa/locks.h (compare_and_swap): Add ldcw semaphore to make
	operation atomic.

2005-12-22  Andrew Haley  <aph@redhat.com>

	PR java/25535
	* testsuite/libjava.lang/PR25535.java: New test.

2005-12-22  Tom Tromey  <tromey@redhat.com>

	* java/lang/natClassLoader.cc (_Jv_NewArrayClass): Don't
	reference NUM_OBJECT_METHODS.
	* include/jvm.h (NUM_OBJECT_METHODS): Removed.

2005-12-18  Anthony Green  <green@redhat.com>

	* gnu/java/net/natPlainDatagramSocketImplPosix.cc (getLocalAddress): 
	New helper function.
	(setOption): Use getLocalAddress.  Don't downcast value to
	InetAddress.
	(getOption): Use getLocalAddress.

2005-12-16  Tom Tromey  <tromey@redhat.com>

	* java/lang/Class.java (getPackage): Get package from
	VMClassLoader if needed.

2005-12-16  Tom Tromey  <tromey@redhat.com>

	* testsuite/libjava.jacks/jacks.xfail
	(8.5.2-accessible-static-member-usage-3): Removed.

2005-12-15  Tom Tromey  <tromey@redhat.com>

	* testsuite/libjava.compile/rh175833.java: New file.
	* testsuite/libjava.compile/pr25429.java: New file.

2005-12-15  Alan Modra  <amodra@bigpond.net.au>

	* testsuite/lib/libjava.exp: Revert 2005-12-01.
	* testsuite/libjava.lang/Array_3.xfail: Delete.

2005-12-14  Andrew Haley  <aph@redhat.com>

	* gnu/java/rmi/rmic/CompilerProcess.java: Use a new thread to
	handle stdout from the child process.

2005-12-14  Tom Tromey  <tromey@redhat.com>

	PR classpath/25389:
	* java/io/File.java (File): Throw IllegalArgumentException if URI is
	non-hierarchical.

2005-12-12  Andrew Haley  <aph@redhat.com>

	* java/lang/VMCompiler.java: Directly generate a new instance of
	gnu.java.security.provider.MD5.

2005-12-08  Andrew Haley  <aph@redhat.com>

	PR libgcj/25265
	* java/lang/Object.h (throwNoSuchMethodError): New method.
	* java/lang/Object.java (throwNoSuchMethodError): New method.
	* include/jvm.h (_Jv_ThrowNoSuchFieldError): Declare.
	* link.cc (_Jv_ThrowNoSuchFieldError): New.
	(link_symbol_table): Don't throw a NoSuchFieldError if a field is
	missing.  Instead, set the otable entry to zero.
	(link_symbol_table): If we don't find a nonstatic method, insert
	the vtable offset of Object.throwNoSuchMethodError() into the
	otable.

2005-12-05  Tom Tromey  <tromey@redhat.com>

	* testsuite/libjava.compile/rh174912.java: New file.

2005-12-01  Geoffrey Keating  <geoffk@apple.com>

	* testsuite/lib/libjava.exp (test_libjava_from_javac): Support
	xfail-byte-exec.
	* testsuite/libjava.lang/Array_3.xfail: New file.

2005-12-01  Alan Modra  <amodra@bigpond.net.au>

	* stacktrace.cc (UnwindTraceFn): Use UNWRAP_FUNCTION_DESCRIPTOR
	to compare _Jv_InterpMethod::run against current func.

2005-11-30  Andrew Haley  <aph@redhat.com>

	* classpath/lib/Makefile.am (resources): Use `cp -p'.
	Remove `@' from start of line.

2005-11-28  Tom Tromey  <tromey@redhat.com>

	PR java/18278:
	* testsuite/libjava.jni/pr18278.out: New file.
	* testsuite/libjava.jni/pr18278.c: New file.
	* testsuite/libjava.jni/pr18278.java: New file.
	* include/jvm.h (_Jv_UnwrapJNIweakReference): Declare.
	* jni.cc (_Jv_UnwrapJNIweakReference): New function.
	(call): Unwrap return value if needed.

2005-11-25  Mark Wielaard  <mark@klomp.org>

	* standard.omit.in: Remove javax/rmi, org/omg, gnu/CORBA and
	gnu/javax/rmi.
	* scripts/makemake.tcl: Set javax/rmi, org/omg, gnu/CORBA and
	gnu/javax/rmi to bc.
	* gnu/CORBA/ObjectCreator.java: New override file for missing
	VMStackWalker issue.
	* gnu/CORBA/DynAn/gnuDynValue.java: New override file for bug #24938
	* gnu/CORBA/DynAn/RecordAny.java: Likewise
	* sources.am: Regenerated.
	* Makefile.in: Regenerated

2005-11-25  Andrew Haley  <aph@redhat.com>

	PR libgcj/25016
	* posix-threads.cc (_Jv_CondWait): Rewrite calculation of the
	struct timespec we pass to pthread_cond_timedwait.

2005-11-25  Ranjit Mathew  <rmathew@gcc.gnu.org>

	* testsuite/libjava.jacks/jacks.xfail: Remove
	non-jls-argument-expansion-13 and add
	non-jls-argument-expansion-error-1 in response to the @file support
	patch in the main GCC driver.

2005-11-24  Bryce McKinlay  <mckinlay@redhat.com>

	* sysdep/ia64-frame.h: Removed.
	* sysdep/ia64.c: Removed.
	* sysdep/dwarf2-backtrace.cc: Removed.
	* configure.ac: Remove references to HAVE_BACKTRACE and
	SUPPLY_BACKTRACE.
	* Makefile.am: Remove SUPPLY_BACKTRACE support.
	* configure: Rebuilt.
	* Makefile.in: Rebuilt.

2005-11-24  Bryce McKinlay  <mckinlay@redhat.com>

	* gij.cc (nonstandard_opts_help): Add entry for -Xss.

2005-11-17  Mark Wielaard  <mark@klomp.org>

	Imported GNU Classpath gcj-import-20051117.
	* gnu/java/net/protocol/file/Connection.java: Removed, fully merged.
	* sources.am: Regenerated.
	* Makefile.in: Likewise.

2005-11-17  Mark Wielaard  <mark@klomp.org>

	* gnu/java/net/protocol/file/Handler.java: Removed, fully merged now.
	* java/net/ServerSocket.java: Likewise.
	* sources.am: Regenerated.
	* Makefile.in: Regenerated.

2005-11-17  Mark Wielaard  <mark@klomp.org>

	Fixes bug #24006
	* java/net/ServerSocket.java (implAccept): Set Socket.bound to true.

2005-11-17  Tom Tromey  <tromey@redhat.com>

	* java/net/ServerSocket.java (accept): Use correct security manager
	call.

2005-11-17  Jeroen Frijters  <jeroen@frijters.net>

	* java/net/ServerSocket.java
	(bound): Removed.
	(local): New field.
	(bind): Cache local socket address.
	(getInetAddress, getLocalPort, getLocalSocketAddress, isBound):
	Use cached local socket address.
	(close): bound field was removed.

2005-11-17  Tom Tromey  <tromey@redhat.com>

	* java/net/URLConnection.java (setDoInput): Javadoc fix.
	(setDoOutput): Likewise.
	(setContentHandlerFactory): Likewise.
	(setFileNameMap): Likewise.

2005-11-17  Mark Wielaard  <mark@klomp.org>

	* java/net/URLClassloader.java (addURLs): Add comment about jboss.

2005-11-17  Mark Wielaard  <mark@klomp.org>

	* java/net/URLClassLoader.java (addURLs): Don't call addURL(), but
	call urls.add() and addURLImpl() directly on each URL.

2005-11-17  Tom Tromey  <tromey@redhat.com>

	* java/net/URLClassLoader.java (definePackage): Javadoc fixes.

2005-11-17  Jeroen Frijters  <jeroen@frijters.net>

	* java/net/URLClassLoader.java
	(Resource.name): Removed field.
	(JarURLResource.name): Added field.
	(FileResource.getURL): Use File.toURL() instead of doing it in
	a way that breaks on Windows.

2005-11-17  Roman Kennke  <roman@kennke.org>

	Reported by: Ingo Proetel  <proetel@aicas.com>
	* java/net/URLClassLoader.java
	(findClass): Added null check to avoid NullPointerException.

2005-11-17  David Gilbert  <david.gilbert@object-refinery.com>

	* java/net/URLClassLoader.java: reordered some API doc comments to
	suppress Eclipse warnings, and fixed API doc link.

2005-11-17  Tom Tromey  <tromey@redhat.com>

	* java/net/URLClassLoader.java (URLClassLoader): Removed
	unused constructor.

2005-11-17  Jeroen Frijters  <jeroen@frijters.net>

	* java/net/URLClassLoader (findClass): Close InputStream after we're
	done with it.

2005-11-17  Bryce McKinlay  <mckinlay@redhat.com>

	Implement -Xss.
	* include/jvm.h (gcj::stack_size): Declare.
	(_Jv_StackSize): Declare.
	* posix-threads.cc (_Jv_InitThreads): Validate gcj::stack_size.
	(_Jv_ThreadStart): Set stack size if specified.
	* prims.cc (gcj::stack_size): Define.
	(parse_memory_size): Renamed from parse_heap_size.
	(_Jv_SetStackSize): Parse stack size argument and set 
	gcj::stack_size.

2005-11-17  Mark Wielaard  <mark@klomp.org>

	* java/text/SimpleDateFormat.java: Removed, fully merged now.
	* sources.am: Regenerated.
	* Makefile.in: Regenerated.

2005-11-17  Sven de Marothy  <sven@physto.se>

	* java/text/SimpleDateFormat.java
	(computeOffset): Allow timezone to be first in the parsed String.

2005-11-17  Mark Wielaard  <mark@klomp.org>

	* java/text/SimpleDateFormat.java (field, size): Make package private.

2005-11-17  Tom Tromey  <tromey@redhat.com>

	* java/text/SimpleDateFormat.java (compileFormat): Correctly
	handle quoted single quotes.  PR classspath/23183.

2005-11-17  Tom Tromey  <tromey@redhat.com>

	* java/text/SimpleDateFormat.java (compileFormat): Reformatted.

2005-11-17  Tom Tromey  <tromey@redhat.com>

	* java/text/DateFormat.java (serialVersionUID): New field.

2005-11-17  Mark Wielaard  <mark@klomp.org>

	* java/text/DateFormat.java (equals): Reimplement.

2005-11-17  David Gilbert  <david.gilbert@object-refinery.com>

	* java/text/Collator.java: API doc fixes,
	* java/text/DateFormat.java: likewise,
	* java/text/DecimalFormatSymbols.java: likewise,
	* java/text/DateFormatSymbols.java: likewise,
	* java/text/SimpleDateFormat.java: likewise.

2005-11-17  Jeroen Frijters  <jeroen@frijters.net>

	* java/text/Collator.java (getInstance(Locale)):
	Added default collation pattern to handle case when resource
	is missing and throw InternalError instead of returning null
	should parsing fail.

2005-11-15  Mark Wielaard  <mark@klomp.org>

	* java/util/zip/ZipEntry.java: Removed, fully merged now.
	* java/util/zip/ZipFile.java: Likewise.
	* sources.am: Regenerated.
	* Makefile.in: Regenerated.

2005-11-15  Tom Tromey  <tromey@redhat.com>

	classpath/23890:
	* java/util/Calendar.java (equals): Include other calendar
	attributes.
	(hashCode): Updated.
	* java/util/GregorianCalendar.java (hashCode): New method.
	(equals): Use super.equals().

2005-11-15  Sven de Marothy  <sven@physto.se>

	* java/util/Calendar (setTimeInMillis): Recompute time fields.

2005-11-15  Mark Wielaard  <mark@klomp.org>

	* java/util/SimpleTimeZone.java: Removed, fully merged now.
	* java/util/Date.java: Likewise.
	* sources.am: Regenerated.
	* Makefile.in: Regenerated.

2005-11-15  David Gilbert  <david.gilbert@object-refinery.com>

	* java/util/Calendar.java: fixed minor problems in API docs,
	* java/util/Date.java: likewise,
	* java/util/ResourceBundle.java: likewise,
	* java/util/SimpleTimeZone.java: likewise,

2005-11-15  Jeroen Frijters  <jeroen@frijters.net>

	* java/io/ObjectInputStream.java
	(parseContent): Removed bogus println and fixed bug #24422.
		
2005-11-15  Mark Wielaard  <mark@klomp.org>

	* java/io/ObjectStreamClass.java: Removed, fully merged now.
	* sources.am: Regenerated.
	* Makefile.in: Regenerated.

2005-11-15  Wolfgang Baer  <WBaer@gmx.de>

	* java/io/ObjectInputStream.java
	(processResolution): Pass Error, RuntimeException and
	ObjectStreamException through to the caller.
	(readObject): Documentation update.

2005-11-15  Mark Wielaard  <mark@klomp.org>

	Imported GNU Classpath 0.19 + gcj-import-20051115.
	* sources.am: Regenerated.
	* Makefile.in: Likewise.
	* scripts/makemake.tcl: Use glob -nocomplain.

2005-11-15  Scott Gilbertson  <scottg@mantatest.com>

	* Makefile.in: Re-generated.
	* gnu/awt/xlib/XGraphicsDevice.java: New file.
	* gnu/awt/xlib/XToolkit.java
	(getLocalGraphicsEnvironment): Implemented. 
	* gnu/awt/xlib/XGraphicsEnvironment.java: New file.
	* sources.am: Re-generated.

2005-15-09  David Daney <ddaney@avtrex.com>

	PR libgcj/15430
	* gnu/java/net/natPlainSocketImplPosix.cc (throw_on_sock_closed): New
	function.
	(accept): Call it.
	(close): Call shutdown before closing.
	(read()): Call read_helper with proper parameters.
	(read(buffer, int, int)): Likewise.
	(read_helper):  Pass pointer to the PlainSocketImpl, remove native_fd
	and timeout parameters.  Make prototype to match. Use 
	pointer to PlainSocketImpl to access members. Call throw_on_sock_closed
	in two places.

2005-11-15  Andrew Haley  <aph@redhat.com>

	* Merge from Classpath head:

   2005-09-16  Andrew Haley  <aph@redhat.com>
   
           * java/io/ObjectStreamClass.java (findAccessibleMethod): Allow
           protected readResolve().  Rewrite accessibility check.
   
   2005-07-07  Jeroen Frijters  <jeroen@frijters.net>
   
           * java/io/ObjectStreamClass.java
           (findAccessibleMethod): Added code to make method accessible.
   
   2005-07-03  Daniel Bonniot  <bonniot@users.sf.net>
   
           * java/io/ObjectStreamClass.java (inSamePackage): New private method.
           (findAccessibleMethod): Likewise.
           (cacheMethods): Lookup readResolve and writeReplace using the new
           findAccessibleMethod().
   
2005-11-14  Mohan Embar  <gnustuff@thisiscool.com>

	* java/net/natVMNetworkInterfaceWin32.cc: Include
	java/net/VMNetworkInterface.h.

2005-11-14  Mohan Embar  <gnustuff@thisiscool.com>
	    David Daney  <ddaney@avtrex.com>

	* gnu/java/net/natPlainSocketImplWin32.cc: Updated copyright.
	(read): Handle count == 0 case.

2005-11-09  Tom Tromey  <tromey@redhat.com>

	* testsuite/libjava.jacks/jacks.xfail (non-jls-zip-2): Now
	passes.

2005-11-08  Tom Tromey  <tromey@redhat.com>

	PR libgcj/24587:
	* gnu/classpath/SystemProperties.java: Set gnu.classpath.version.

2005-11-08  Tom Tromey  <tromey@redhat.com>

	PR libgcj/23763.  From aeby@graeff.com.
	* java/lang/natPosixProcess.cc (nativeSpawn): Unblock SIGCHLD
	before exec.

2005-11-08  Mark Wielaard  <mark@klomp.org>

	* scripts/makemake.tcl: Set package gnu/javax/sound/midi to bc.

2005-11-07  David Daney  <ddaney@avtrex.com>

	* mauve-libgcj: Disable javax.rmi.* and
	java.io.InputStreamReader.getEncoding.

2005-11-04  Tom Tromey  <tromey@redhat.com>

	PR libgcj/14358, libgcj/24552:
	* gnu/gcj/convert/IOConverter.java: Regenerate aliases.  Add
	aliases for 'euc_jp' and 'eucjp'.
	* scripts/encodings.pl: Recognize 'none', not 'NONE'.  Include
	canonical names in output.
	(%map): Added UnicodeLittle and UnicodeBig.

2005-11-04  Kaz Kojima  <kkojima@gcc.gnu.org>

	* include/sh-signal.h (MAKE_THROW_FRAME): Remove trailing whitespace.

2005-11-02  Andreas Tobler  <a.tobler@schweiz.ch>

	* testsuite/lib/libjava.exp (libjava_find_lib): Add dylib to the shared
	library extensions.

2005-10-12  Andrew Haley  <aph@redhat.com>

	PR java/24251
	* link.cc (ensure_method_table_complete): Install Miranda methods
	for interfaces too.

2005-10-10  Tom Tromey  <tromey@redhat.com>

	* testsuite/libjava.lang/ExtraClassLoader.out: New file.
	* testsuite/libjava.lang/TestProxy.java (MyInvocationHandler):
	Now static.

2005-10-05  Richard Henderson  <rth@redhat.com>

	PR target/23602
	* configure.host (i?86-*): Set -fomit-frame-pointer in libgcj_flags,
	but not BACKTRACESPEC.
	(x86_64-*): Similarly.  Don't set -ffloat-store in 64-bit mode.

2005-10-02  Andrew Pinski  <pinskia@physics.uc.edu>

	* testsuite/lib/jni.exp (gcj_jni_test_one): For
	darwin, use -shared-libgcc not -lgcc_s, and explain why.
	(gcj_jni_invocation_test_one): Likewise.

2005-09-30  Tom Tromey  <tromey@redhat.com>

	PR libgcj/24051:
	* Makefile.in: Rebuilt.
	* Makefile.am (toolexeclib_LTLIBRARIES): Add Qt library if
	requested.
	(lib_gnu_java_awt_peer_qt_la_SOURCES): New variable.
	(lib_gnu_java_awt_peer_qt_la_LIBADD): Likewise.
	(lib_gnu_java_awt_peer_qt_la_DEPENDENCIES): Likewise.
	(lib_gnu_java_awt_peer_qt_la_LDFLAGS): Likewise.
	(lib_gnu_java_awt_peer_qt_la_LINK): Likewise.
	* configure: Rebuilt.
	* configure.ac: Pass --enable-qt-peers when qt is requested.

2005-09-29  Andreas Tobler  <a.tobler@schweiz.ch>

	* configure.ac: Fix typo.
	* configure: Regenerate.

2005-09-28  Geoffrey Keating  <geoffk@apple.com>

	* sysdep/powerpc/locks.h: Use 64-bit versions of primitives when
	__LP64__ is defined rather than __powerpc64__.
	(compare_and_swap): 'ret' is an obj_addr_t not just an int.
	(compare_and_swap_release): Likewise.

2005-09-28  David Daney  <ddaney@avtrex.com>

	* HACKING: Update instructions for classpath import.

2005-09-27  Tom Tromey  <tromey@redhat.com>

	PR libgcj/23367:
	* include/jvm.h (_Jv_FreeMethodCache): Declare.
	* java/lang/natClass.cc (MCACHE_SIZE): Conditional on HAVE_TLS.
	(struct _Jv_mcache): Likewise.
	(method_cache): Likewise.
	(_Jv_FindMethodInCache): Do nothing unless TLS is available.
	(_Jv_AddMethodToCache): Likewise.
	(_Jv_FreeMethodCache): New function.
	* java/lang/natThread.cc (finish_): Call _Jv_FreeMethodCache.
	* aclocal.m4, configure, include/config.h.in: Rebuilt.
	* configure.ac: Invoke GCC_CHECK_TLS.

2005-09-27  Tom Tromey  <tromey@redhat.com>

	* configure, Makefile.in: Rebuilt.
	* sources.am: Rebuilt.
	* scripts/makemake.tcl (emit_bc_rule): Special-case qt.
	* configure.ac (TOOLKIT): Handle Qt peers properly.

2005-09-23  Tom Tromey  <tromey@redhat.com>

	Imported Classpath 0.18.
	* sources.am, Makefile.in: Updated.
	* Makefile.am (nat_source_files): Removed natProxy.cc.
	* java/lang/reflect/natProxy.cc: Removed.
	* gnu/classpath/jdwp/VMFrame.java,
	gnu/classpath/jdwp/VMIdManager.java,
	gnu/classpath/jdwp/VMVirtualMachine.java,
	java/lang/reflect/VMProxy.java: New files.

2005-09-23  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* scripts/makemake.tcl (verbose): Add gnu/java/awt/peer/qt to BC
	list.

2005-09-23  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* gnu/java/net/DefaultContentHandlerFactory.java (getContent):
	Remove ClasspathToolkit references.

2005-09-23  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* gnu/awt/xlib/XCanvasPeer.java: Add new peer methods.
	* gnu/awt/xlib/XFramePeer.java: Likewise.
	* gnu/awt/xlib/XGraphicsConfiguration.java: Likewise.

2005-09-23  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* Makefile.am (libgcjawt_la_SOURCES): Remove jawt.c.  Add
	classpath/native/jawt/jawt.c.
	* Makefile.in: Regenerate.
	* jawt.c: Remove file.
	* include/Makefile.am (tool_include__HEADERS): Remove jawt.h and
	jawt_md.h.  Add ../classpath/include/jawt.h and
	../classpath/include/jawt_md.h.
	* include/Makefile.in: Regenerate.
	* include/jawt.h: Regenerate.
	* include/jawt_md.h: Regenerate.

2005-09-21  Bryce McKinlay  <mckinlay@redhat.com>

	* gnu/gcj/runtime/BootClassLoader.java (BootClassLoader): Pass
	`null' parent ClassLoader to parent constructor.
	* gnu/gcj/runtime/HelperClassLoader.java (HelperClassLoader): New
	constructor.

2005-09-21  Ranjit Mathew  <rmathew@gcc.gnu.org>

	* testsuite/libjava.jacks/jacks.xfail: Updated for PR java/23891.

2005-09-17  H.J. Lu  <hongjiu.lu@intel.com>

	* testsuite/libjava.jni/jni.exp (gcj_jni_invocation_test_one):
	Use libjava_find_lib to find the proper libgcj.

2005-09-16  Anthony Green  <green@redhat.com>

	PR libgcj/20198
	* java/net/URLClassLoader.java (FileURLLoader.getResource): File
	resources should all have canonicalized names.

2005-09-15  Tom Tromey  <tromey@redhat.com>

	PR libgcj/16032:
	* interpret.cc (AVAL1U): Resolve pool entry when not direct
	threaded.
	(AVAL2U): Likewise.
	(compile): Handle 'ldc class' specially.
	(_Jv_InterpMethod::run): Added special 'ldc class' instruction.
	* verify.cc (check_constant): Handle 'ldc class' for 1.5 classes.
	* defineclass.cc (handleCodeAttribute): Set new field.
	(MAJOR_1_1, MINOR_1_1, MAJOR_1_2, MINOR_1_2, MAJOR_1_3, MINOR_1_3,
	MAJOR_1_4, MINOR_1_4, MAJOR_1_5, MINOR_1_5): New defines.
	(parse): Check version numbers.
	(_Jv_ClassReader::is_15): New field.
	(_Jv_ClassReader): Initialize it.
	* include/java-interp.h (_Jv_InterpMethod::is_15): New field.

2005-09-15  Tom Tromey  <tromey@redhat.com>

	For PR libgcj/23288:
	* java/net/URLClassLoader.java (definePackage): Correctly order
	arguments to definePackage.  Look up per-entry Attributes.
	(getAttributeValue): New method.

2005-09-12  Thomas Fitzsimmons  <fitzsim@redhat.com>

	PR libgcj/23762
	* shlibpath.m4: New file.
	* configure.ac: If libltdl is being used call AC_LTDL_SHLIBPATH
	macro.
	* gnu/classpath/natSystemProperties.cc (insertSystemProperties)
	[USE_LTDL]: If it was not defined with -D set java.library.path to
	the value of LTDL_SHLIBPATH_VAR.

2005-09-08  Andrew Haley  <aph@redhat.com>

	* java/net/URLClassLoader.java (addURLImpl): Synchronize on the
	loader.
	(toString): Likewise.

2005-09-08  Andrew Haley  <aph@redhat.com>

	PR java/22084
	* include/i386-signal.h (HANDLE_DIVIDE_OVERFLOW): Bump IP by 1 if
	R/M field in instruction is 100.

2005-09-08  Thomas Fitzsimmons  <fitzsim@redhat.com>

	PR libgcj/23761
	* include/java-props.h (_Jv_Module_Load_Path): Declare variable.
	* java/lang/natRuntime.cc (init): Call lt_dlsetsearchpath after
	lt_dlinit.
	* gnu/classpath/natSystemProperties.cc (_Jv_Module_Load_Path):
	Define variable.
	(_Jv_SetDLLSearchPath): Do not call lt_dlsetsearchpath.  Set
	_Jv_Module_Load_Path.

2005-09-06  Tom Tromey  <tromey@redhat.com>

	PR libgcj/23739:
	* testsuite/libjava.jni/pr23739.c: New file.
	* testsuite/libjava.jni/pr23739.java: New file.
	* testsuite/libjava.jni/pr23739.out: New file.
	* jni.cc (_Jv_JNI_IsAssignableFrom): Reversed arguments.
	* java/lang/reflect/natMethod.cc (invoke): Updated.
	* java/lang/natClass.cc (isAssignableFrom): Updated.
	(isInstance): Likewise.
	(_Jv_IsAssignableFrom): Reversed arguments.
	(_Jv_IsInstanceOf): Updated.
	(_Jv_CheckCast): Likewise.
	(_Jv_CheckArrayStore): Likewise.
	(_Jv_IsAssignableFromSlow): Reversed arguments.
	(_Jv_InterfaceAssignableFrom): Likewise.
	* link.cc (verify_type_assertions): Updated.
	* prims.cc (_Jv_CheckAccess): Updated.

2005-09-05  Ranjit Mathew  <rmathew@hotmail.com>

	Testsuite changes for PR java/23431.
	* testsuite/libjava.jacks/jacks.xfail: Remove 8.1.1.1-12 and
	8.4.6.2-hiding-5.
	* testsuite/libjava.compile/PR23431_1.java: New testcase.
	* testsuite/libjava.compile/PR23431_2.java: Likewise.
	* testsuite/libjava.compile/PR23431_1.xfail: New file.
	* testsuite/libjava.compile/PR23431_2.xfail: Likewise.

2005-08-29  Thomas Fitzsimmons  <fitzsim@redhat.com>

	PR libgcj/23549
	* gij.cc (main): Don't expect arguments to -enableassertions, -ea,
	-disableassertions and -da.

2005-08-29  Andrew Pinski  <pinskia@physics.uc.edu>

	* configure.ac: Replace "*-*-darwin[0-7].*" with
	"*-*-darwin[[0-7]].*"
	* configure: Regenerate.

2005-08-24  Andreas Tobler  <a.tobler@schweiz.ch>

	* configure.ac (extra_ldflags_libjava): Enable -single_module only for
	darwin < 8.
	* configure: Regenerate.

2005-08-23  Roman Kennke  <roman@kennke.org>

	* java/lang/Character.java
	(toChars(int)): New JDK1.5 method.
	(toChars(int, char[], int)): New JDK1.5 method.
	(charCount): New JDK1.5 method.
	(isSupplementaryCodePoint): New JDK1.5 method.
	(isValidCodePoint): New JDK1.5 method.

2005-08-23  Tom Tromey  <tromey@redhat.com>

	* aclocal.m4, Makefile.in: Rebuilt.
	* Makefile.am (property_files): Added META-INF files.
	(propertyo_files): Changed definition.
	($(propertyo_files)): Updated patterns.

2005-08-22  Tom Tromey  <tromey@redhat.com>

	PR libgcj/22622:
	* configure: Rebuilt.
	* configure.ac: Correctly create Configuration.java (for
	temporary use).

2005-08-22  Kelley Cook  <kcook@gcc.gnu.org>

	* Makefile.am (ACLOCAL_AMFLAGS): Also include "..".
	* acinclude.m4: Delete.  Extract CHECK_FOR_BROKEN_MINGW_LD to ...
	* mingwld.m4: ... this new file.
	* aclocal.m4, Makefile.in, gcj/Makefile.in: Regenerate. 
	* include/Makefile.in, testsuite/Makfile.in: Regenerate.

2005-08-21  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>

	PR libgcj/23507
	* stacktrace.cc (_Jv_StackTrace::UnwindTraceFn): Fix typo in newLength
	assignment.  Cast operands of compare to function pointer type.

2005-08-21  Tom Tromey  <tromey@redhat.com>

	* HACKING: Updated for hacking classpath in libgcj.

2005-08-20  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>

	PR libgcj/21692
	* sysdep/pa/descriptor.h: New file.
	* configure.host: Use sysdep/pa/descriptor.h on hppa*-*.

2005-08-19  Andrew Pinski  <pinskia@physics.uc.edu>

	* Makefile.am (extra_ldflags_libjava): New variable to
	substitute in.
	(LIBLINK): Add extra_ldflags_libjava to it.
	* configure.ac (extra_ldflags_libjava): Set for *-darwin* to
	"-Wl,-single_module".
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* gcj/Makefile.in: Regenerate.
	* include/Makefile.in: Regenerate.
	* testsuite/Makefile.in: Regenerate.

2005-08-17  Tom Tromey  <tromey@redhat.com>

	* java/lang/Class.h (_Jv_IsBinaryCompatibilityABI): Declare as
	friend.
	* include/jvm.h (_Jv_IsBinaryCompatibilityABI): New function.
	* testsuite/libjava.lang/bclink.java: New file.
	* testsuite/libjava.lang/bclink.out: New file.
	* link.cc (print_class_loaded): Changed ABI test to look at
	various _syms fields.

2005-08-17  Andreas Tobler  <a.tobler@schweiz.ch>

	* testsuite/libjava.jacks/jacks.xfail: Remove 15.21-assoc-7,
	15.21-assoc-8, 15.21-equal-3, 15.28-string-11.

2005-08-16  Ranjit Mathew  <rmathew@hotmail.com>

	More testsuite adjustments for PR java/19870.
	* testsuite/libjava.lang/PR19870_2.java: New testcase.
	* testsuite/libjava.lang/PR19870_2.out: Expected output for the
	new testcase.
	* testsuite/libjava.jacks/jacks.xfail: Remove
	8.5.2-non-static-member-usage-2 and add 15.12.3-explicit-constructor-9.

2005-08-16  Tom Tromey  <tromey@redhat.com>

	* gnu/xml/xpath/XPathParser.y: Removed.

2005-08-12  Morgan Deters  <mdeters@morgandeters.com>

	PR libgcj/23353:
	* java/lang/natObject.cc (clone): Clear sync_info.

2005-07-26  Tom Tromey  <tromey@redhat.com>

	* gnu/java/net/protocol/ftp/package.html,
	gnu/javax/swing/text/html/package.html,
	gnu/javax/swing/text/html/parser/package.html,
	gnu/javax/swing/text/html/parser/models/package.html,
	gnu/javax/swing/text/html/parser/support/package.html,
	gnu/javax/swing/text/html/parser/support/low/package.html,
	gnu/xml/aelfred2/package.html, gnu/xml/dom/package.html,
	gnu/xml/pipeline/package.html, gnu/xml/transform/package.html,
	gnu/xml/util/package.html, java/awt/geom/doc-files/Area-1.png,
	java/awt/geom/doc-files/CubicCurve2D-1.png,
	java/awt/geom/doc-files/CubicCurve2D-2.png,
	java/awt/geom/doc-files/CubicCurve2D-3.png,
	java/awt/geom/doc-files/CubicCurve2D-4.png,
	java/awt/geom/doc-files/CubicCurve2D-5.png,
	java/awt/geom/doc-files/Ellipse-1.png,
	java/awt/geom/doc-files/FlatteningPathIterator-1.html,
	java/awt/geom/doc-files/GeneralPath-1.png,
	java/awt/geom/doc-files/QuadCurve2D-1.png,
	java/awt/geom/doc-files/QuadCurve2D-2.png,
	java/awt/geom/doc-files/QuadCurve2D-3.png,
	java/awt/geom/doc-files/QuadCurve2D-4.png,
	java/awt/geom/doc-files/QuadCurve2D-5.png,
	javax/imageio/package.html, javax/imageio/event/package.html,
	javax/imageio/metadata/package.html,
	javax/imageio/spi/package.html, javax/imageio/stream/package.html,
	javax/swing/border/doc-files/BevelBorder-1.png,
	javax/swing/border/doc-files/BevelBorder-2.png,
	javax/swing/border/doc-files/BevelBorder-3.png,
	javax/swing/border/doc-files/EmptyBorder-1.png,
	javax/swing/border/doc-files/EtchedBorder-1.png,
	javax/swing/border/doc-files/EtchedBorder-2.png,
	javax/swing/border/doc-files/LineBorder-1.png,
	javax/swing/border/doc-files/MatteBorder-1.png,
	javax/swing/border/doc-files/MatteBorder-2.png,
	javax/swing/border/doc-files/MatteBorder-3.png,
	javax/swing/border/doc-files/MatteBorder-4.png,
	javax/swing/border/doc-files/MatteBorder-5.png,
	javax/swing/border/doc-files/MatteBorder-6.png,
	javax/swing/border/doc-files/SoftBevelBorder-1.png,
	javax/swing/border/doc-files/SoftBevelBorder-2.png,
	javax/swing/border/doc-files/SoftBevelBorder-3.png,
	javax/swing/plaf/basic/doc-files/BasicBorders-1.png,
	javax/swing/plaf/basic/doc-files/BasicBorders-2.png,
	javax/swing/plaf/basic/doc-files/BasicBorders.ButtonBorder-1.png,
	javax/swing/plaf/basic/doc-files/BasicBorders.FieldBorder-1.png,
	javax/swing/plaf/basic/doc-files/BasicBorders.MarginBorder-1.png,
	javax/swing/plaf/basic/doc-files/BasicBorders.MenuBarBorder-1.png,
	javax/swing/plaf/basic/doc-files/BasicBorders.RadioButtonBorder-1.png,
	javax/swing/plaf/basic/doc-files/BasicBorders.SplitPaneBorder-1.png,
	javax/swing/plaf/basic/doc-files/BasicBorders.SplitPaneBorder-2.png,
	javax/swing/plaf/basic/doc-files/BasicBorders.SplitPaneDividerBorder-1.png,
	javax/swing/plaf/basic/doc-files/BasicBorders.ToggleButtonBorder-1.png,
	javax/swing/plaf/basic/doc-files/BasicGraphicsUtils-1.png,
	javax/swing/plaf/basic/doc-files/BasicGraphicsUtils-2.png,
	javax/swing/plaf/basic/doc-files/BasicGraphicsUtils-3.png,
	javax/swing/plaf/basic/doc-files/BasicGraphicsUtils-4.png,
	javax/swing/plaf/basic/doc-files/BasicGraphicsUtils-5.png,
	javax/swing/plaf/basic/doc-files/BasicGraphicsUtils-6.png,
	javax/swing/plaf/basic/doc-files/BasicGraphicsUtils-7.png,
	javax/swing/plaf/doc-files/ComponentUI-1.dia,
	javax/swing/plaf/doc-files/ComponentUI-1.png,
	javax/swing/plaf/doc-files/TreeUI-1.png,
	javax/xml/datatype/package.html, javax/xml/namespace/package.html,
	javax/xml/parsers/package.html, javax/xml/transform/package.html,
	javax/xml/transform/dom/package.html,
	javax/xml/transform/sax/package.html,
	javax/xml/transform/stream/package.html,
	javax/xml/validation/package.html, javax/xml/xpath/package.html:
	Removed.

2005-07-22  Tom Tromey  <tromey@redhat.com>

	* include/Makefile.in: Rebuilt.
	* include/Makefile.am (tool_include__HEADERS): Include
	classpath's jni.h.

2005-07-20  Tom Tromey  <tromey@redhat.com>

	* sources.am, Makefile.in: Rebuilt.
	* Makefile.am (all_xlib_lo_files): Removed.
	(all_libgcj_lo_files): Likewise.
	(lib_gnu_awt_xlib_la_LIBADD): List correct .lo files.
	(xlib_java_source_files): Removed.
	(xlib_nat_headers): Updated.
	* configure: Rebuilt.
	* configure.ac: Create standard.omit.
	* standard.omit.in: New file.
	* standard.omit: Removed.
	* scripts/makemake.tcl (gnu/gcj/xlib, gnu/awt/xlib): Now
	'package'.
	(emit_package_rule): Special case xlib peers.
	(emit_source_var): Likewise.
	Read standard.omit.in.
	* gnu/awt/xlib/XToolkit.java (createEmbeddedWindow): New method.

2005-07-18  Tom Tromey  <tromey@redhat.com>

	* HACKING: Updated.

2005-07-19  Matthias Klose  <doko@debian.org>

	* classpath/java/awt/im/InputContext.java (clinit): Initialize
	  line, im.

2005-07-18  Tom Tromey  <tromey@redhat.com>

	PR libgj/21058:
	* sources.am, Makefile.in: Rebuilt.
	* scripts/makemake.tcl (emit_bc_rule): Create a temporary list
	file.
	(emit_source_var): Don't emit patsubst with './'.

2005-07-18  Tom Tromey  <tromey@redhat.com>

	* Makefile.in: Rebuilt.
	* Makefile.am ($(libgij_la_OBJECTS)): Depend on headers.stamp.

2005-07-17  Andreas Jaeger  <aj@suse.de>

	* defineclass.cc (handleClassBegin): Remove unused variable.

2005-07-16  Andreas Schwab  <schwab@suse.de>

	* scripts/makemake.tcl (emit_package_rule): Emit command to create
	target directory.
	* Makefile.am (%.lo): Don't create it here.
	* sources.am, Makefile.in: Regenerated.

2005-07-15  Tom Tromey  <tromey@redhat.com>

	Major merge with Classpath.
	Removed many duplicate files.
	* HACKING: Updated.x
	* classpath: Imported new directory.
	* standard.omit: New file.
	* Makefile.in, aclocal.m4, configure: Rebuilt.
	* sources.am: New file.
	* configure.ac: Run Classpath configure script.  Moved code around
	to support.  Disable xlib AWT peers (temporarily).
	* Makefile.am (SUBDIRS): Added 'classpath'
	(JAVAC): Removed.
	(AM_CPPFLAGS): Added more -I options.
	(BOOTCLASSPATH): Simplified.
	Completely redid how sources are built.
	Include sources.am.
	* include/Makefile.am (tool_include__HEADERS): Removed jni.h.
	* include/jni.h: Removed (in Classpath).
	* scripts/classes.pl: Updated to look at built classes.
	* scripts/makemake.tcl: New file.
	* testsuite/libjava.jni/jni.exp (gcj_jni_compile_c_to_so): Added
	-I options.
	(gcj_jni_invocation_compile_c_to_binary): Likewise.

2005-07-15  Scott Gilbertson  <scottg@mantatest.com>

	* gnu/awt/xlib/XCanvasPeer.java (attributes): New field.
	(eventMask): New field.
	(XCanvasPeer(Component)): Use attributes field.
	(setBackground): Implemented.
	(setEventMask): Process mask only if changed.
	* gnu/awt/xlib/XEventLoop.java (class): Iplement Runnable.
	(eventLoopThread): New field.
	(XEventLoop(Display,EventQueue)): Start eventLoopThread.
	(interrupt): Removed.
	(run): New method.
	* gnu/awt/xlib/XEventQueue.java (getNextEvent): Process Container
	and Component events.
	* gnu/awt/xlib/XFramePeer.java (processingConfigureNotify): New
	field.
	(configureNotify): Set and clear processingConfigureNotify.
	(setBounds): Process only if processingConfigureNotify is false.
	(toBack): Implemented.
	(toFront): Implemented.
	* gnu/awt/xlib/XGraphics.java (setColor): Ignore null color.
	* gnu/awt/xlib/XGraphicsConfiguration.java (getPixel): Ignore null
	color.
	* gnu/awt/xlib/XToolkit.java (nativeQueueEmpty): Always return true.
	(wakeNativeQueue): Do nothing.
	(iterateNativeQueue): Do queue.wait if blocking.
	* gnu/gcj/xlib/Font.java (loadFont): New method.
	(loadFontImpl): Renamed native method, was loadFont. 
	* gnu/gcj/xlib/Window.java (toFront): New method.
	(toBack): New method.
	* gnu/gcj/xlib/natFont.cc (loadFontImpl): Renamed method, was 
	loadFont.
	* gnu/gcj/xlib/natWindow.cc (toBack): New method.
	(toFront): New method. 
	* gnu/gcj/xlib/natXAnyEvent.cc (loadNext): Removed timeout.

2005-07-14  Andrew Haley  <aph@redhat.com>

	* gnu/java/net/protocol/file/Connection.java (unquote): New
	method.
	(connect): Unquote filename.
	gnu/java/net/protocol/jar/Connection.java (getInputStream):
	Likewise.  
	(getJarFile): Likewise.

	* java/net/URLConnection.java (getContentHandler): Guard cast with
	instaceof.

	* java/net/URL.java (URL): If the file part of a spec is absolute,
	ignore the file part of its context.

2005-07-14  Aaron Luchko  <aluchko@redhat.com>

	* gnu/classpath/jdwp/processor/VirtualMachineCommandSet.java:
	Implemented VirtualMachine Command Set.

2005-07-14  Tom Tromey  <tromey@redhat.com>

	* java/lang/Class.java (getProtectionDomain): Merged javadoc from
	Classpath.

2005-07-12  Aaron Luchko  <aluchko@redhat.com>

	* gnu/classpath/jdwp/processor/FieldCommandSet.java:
	Implemented the Field CommandSet.
	* gnu/classpath/jdwp/processor/InterfaceTypeCommandSet.java:
	Implemented the InterfaceType CommandSet.

2005-07-12  Aaron Luchko  <aluchko@redhat.com>

	* gnu/classpath/jdwp/processor/PacketProcessor.java (run): Send
	shutdown to jdwp instead of connection.

2005-07-12  Aaron Luchko  <aluchko@redhat.com>

	* gnu/classpath/jdwp/processor/ObjectReferenceCommandSet.java:
	New file.

2005-07-08  Colin Walters  <walters@verbum.org>

	* verify.cc (class _Jv_BytecodeVerifier) <op_new>: Don't
	check for abstract classes or interfaces here; JVM spec
	says it should throw an exception, so we'll do so later.
	* interpret.cc (run): Throw an InstantiationException for
	abstract classes and interfaces.

2005-07-08  Andrew Haley  <aph@redhat.com>

	* posix-threads.cc (_Jv_ThreadSetPriority): Use SCHED_OTHER
	(regular, non-realtime scheduling), not SCHED_RR (realtime,
	round-robin).

2005-07-07  Aaron Luchko  <aluchko@redhat.com>

	* gnu/classpath/jdwp/util/Signature.java
	(computeFieldSignature): New Method.

2005-07-07  Aaron Luchko  <aluchko@redhat.com>

	* gnu/classpath/jdwp/processor/ReferenceTypeCommandSet.java:New
	file.

2005-07-07  Bryce McKinlay  <mckinlay@redhat.com>

	* testsuite/libjava.jacks/jacks.xfail: Remove 6.5.5.1-nested-4,
	6.5.5.1-nested-7, 6.5.5.1-nested-16, 6.5.5.1-nested-17.

2005-07-07  Bryce McKinlay  <mckinlay@redhat.com>

	* testsuite/libjava.compile/PR21045.java: New test.
	* testsuite/libjava.jacks/jacks.xfail: Remove 15.9.5.1-exception-1,
	15.9.5.1-exception-3, 8.3.2-abrupt-6, 8.3.2-abrupt-7.

2005-07-06  Tom Tromey  <tromey@redhat.com>

	* java/io/InputStreamReader.java (refill): Handle no-progress
	case correctly.
	* gnu/gcj/convert/IOConverter.java: Add 'utf8' alias.

2005-07-06  Tom Tromey  <tromey@redhat.com>

	* testsuite/libjava.jacks/jacks.xfail: Removed 9.1.3-body-5.

2005-07-05  Bryce McKinlay  <mckinlay@redhat.com>

	* testsuite/libjava.compile/PR19674.java: New test.

2005-07-05  Aaron Luchko  <aluchko@redhat.com>

	* gnu/classpath/jdwp/processor/StringReferenceCommandSet.java:
	New file.

2005-07-04  Aaron Luchko  <aluchko@redhat.com>

	* gnu/classpath/jdwp/processor/CommandSet.java: New file.
	* gnu/classpath/jdwp/processor/PacketProcessor.java: Use
	CommandSets to handle JdwpCommandPackets.
	* gnu/classpath/jdwp/transport/JdwpReplyPacket.java: New
	Constructor.

2005-07-01  Tom Tromey  <tromey@redhat.com>

	* libtool-version: Updated.

2005-06-30  Aaron Luchko  <aluchko@redhat.com>

	* gnu/classpath/jdwp/util/JdwpString.java: New file.

2005-06-30  Keith Seitz  <keiths@redhat.com>

	* gnu/classpath/jdwp/transport/JdwpPacket.java (write): New method.
	(myWrite): New abstract method.
	(toBytes): Remove.
	(myToBytes): Remove.
	* gnu/classpath/jdwp/transport/JdwpReplyPacket.java (myWrite): New
	method.
	* gnu/classpath/jdwp/transport/JdwpCommandPacket.java (myWrite): New
	method.
	* gnu/classpath/jdwp/transport/JdwpConnection.java (sendPacket): Use
	JdwpPacket.write instead of JdwpPacket.toBytes.

2005-06-30  Keith Seitz  <keiths@redhat.com>

	* gnu/classpath/jdwp/transport/JdwpConnection.java (sendEvent): New
	method.
	(_bytes): New member.
	(_doStream): New member.
	(JdwpConnection): Initialize new members.

2005-06-29  Kelley Cook  <kcook@gcc.gnu.org>

	* all files: Update for new FSF address.

2005-06-29  Tom Tromey  <tromey@redhat.com>

	PR libgcj/22211:
	* testsuite/libjava.lang/pr22211.java: New file.
	* java/lang/natThread.cc (finish_): Synchronize when updating
	alive_flag.
	(_Jv_AttachCurrentThread): Likewise.
	(interrupt): Only call _Jv_ThreadInterrupt if thread is alive.
	* java/lang/Thread.java (isAlive): Now synchronized.

2005-06-29  Tom Tromey  <tromey@redhat.com>

	* interpret.cc (run) <insn_checkcast, checkcast_resolved>: Use
	_Jv_CheckCast.

2005-06-28  Robin Green  <greenrd@greenrd.org>

	PR java/22189
	* gnu/gcj/runtime/PersistentByteMap.java (init): Fix rounding
	error.

2005-06-27  Tom Tromey  <tromey@redhat.com>

	PR java/21540, PR java/13788:
	* testsuite/libjava.compile/pr21540.java: New file.
	* testsuite/libjava.compile/pr13788.java: New file.
	* testsuite/libjava.jacks/jacks.xfail: Updated.

2005-06-26  Andreas Tobler  <a.tobler@schweiz.ch>

	* testsuite/libjava.mauve/xfails: Updated to reflect current state
	of mauve and libjava. 

2005-06-24  Tom Tromey  <tromey@redhat.com>

	* java/lang/natClassLoader.cc (_Jv_UnregisterClass): Handle case
	where class' name is NULL.
	(_Jv_FindClass): Don't wait for class state.
	* java/lang/natVMClassLoader.cc (defineClass): Only unregister if
	name found.
	* include/java-interp.h (_Jv_DefineClass): Updated.
	* defineclass.cc (_Jv_DefineClass): Added 'name_result' argument.
	(struct _Jv_ClassReader): Likewise.
	(found_name): New field.
	(handleClassBegin): Set *found_name.
	(_Jv_VerifyMethodSignature): Handle case where ptr==NULL.
	(handleClassBegin): Throw error if super class not set.
	(read_methods): Correctly call check_tag and prepare_pool_entry.

2005-06-24  Tom Tromey  <tromey@redhat.com>

	* boehm.cc (_Jv_MarkObj): Handle case where field's type is NULL.

2005-06-24  Tom Tromey  <tromey@redhat.com>

	* verify.cc (verify_instructions_0): Correctly handle situation
	where PC falls off end.

2005-06-24  Tom Tromey  <tromey@redhat.com>

	* interpret.cc (compile): Handle case where table entry is
	outside of PC range.

2005-06-23  Bryce McKinlay  <mckinlay@redhat.com>

	* testsuite/libjava.compile/PR20697.java: New test-case.

2005-06-22  Kelley Cook  <kcook@gcc.gnu.org>

	* Makefile.am (SUBDIRS): Use append for conditional.
	(toolexeclib_LTLIBRARIES): Likewise.
	(lib_gnu_java_awt_peer_gtk_la_SOURCES): Directly define with
	a conditional append.
	* Makefile.in: Regenerate.

2005-06-17  Keith Seitz  <keiths@redhat.com>

	* gnu/classpath/jdwp/exception/VmDeadException.java: New file.
	* gnu/classpath/jdwp/exception/NotImplementedException.java: New file.
	* gnu/classpath/jdwp/exception/JdwpInternalErrorException.java: New
	file.
	* gnu/classpath/jdwp/exception/JdwpException.java: New file.
	* gnu/classpath/jdwp/exception/InvalidThreadGroupException.java: New
	file.
	* gnu/classpath/jdwp/exception/InvalidThreadException.java: New file.
	* gnu/classpath/jdwp/exception/InvalidStringException.java: New file
	* gnu/classpath/jdwp/exception/InvalidObjectException.java: New file.
	* gnu/classpath/jdwp/exception/InvalidEventTypeException.java: New
	file.
	* gnu/classpath/jdwp/exception/InvalidCountException.java: New file.
	* gnu/classpath/jdwp/exception/InvalidClassException.java: New file.

2005-06-16  Kelley Cook  <kcook@gcc.gnu.org>

	* Makefile.am (libgcj_la_SOURCES): Define without conditional sources.
	(if USING_BOEHMGC): Directly append libgcj_la_SOURCES.
	(if USING_NOGC, SUPPLY_BACKTRACE, USING_POSIX_PLATFORM,
	USING_WIN32_PLATFORM, USING_DARWIN_CRT, USING_POSIX_THREADS,
	USING_WIN32_THREADS, USING_NO_THREADS): Likewise.
	* Makefile.in: Regenerate.

2005-06-15  Kelley Cook  <kcook@gcc.gnu.org>

	* configure.ac (USING_ECOS_PLATFORM): Remove and merge into...
	(USING_POSIX_PLATFORM): ... here.
	* Makefile.am: Delete USING_ECOS_PLATFORM.
	* configure, Makefile.in, include/Makefile.in, testsuite/Makefile.in,
	external/Makefile.in, external/sax/Makefile.in,
	external/w3c_dom/Makefile.in, gcj/Makefile.in: Regenerate.

2005-06-15  Tom Tromey  <tromey@redhat.com>

	PR libgcj/17536:
	* testsuite/libjava.lang/pr17536.java: New file.
	* testsuite/libjava.lang/pr17536.out: New file.

2005-06-15  Goffredo Baroncelli  <kreijack@inwind.it>

	PR libgcj/21074:
	* gnu/java/net/protocol/http/HTTPURLConnection.java
	(getHeaderFieldKey): Check index.

2005-06-15  Tom Tromey  <tromey@redhat.com>

	PR libgcj/21906:
	* defineclass.cc (handleMethodsEnd): Set ncode for abstract
	methods.
	* include/jvm.h (_Jv_ThrowAbstractMethodError): Declare.
	* link.cc (_Jv_ThrowAbstractMethodError): Renamed.  No longer
	static.
	(append_partial_itable): Use it.
	(set_vtable_entries): Likewise.

2005-06-15  Tom Tromey  <tromey@redhat.com>

	* gnu/gcj/runtime/SystemClassLoader.java (init): Clear
	last_was_sep in loop.

2005-06-15  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>

	* configure.host: Handle Solaris 10/x86.

2005-06-14  Keith Seitz  <keiths@redhat.com>

	* gnu/classpath/jdwp/id/JdwpIdFactory.java: New file.
	* gnu/classpath/jdwp/processor/PacketProcessor.java: New file.

2005-06-14  Keith Seitz  <keiths@redhat.com>

	* gnu/classpath/jdwp/id/ArrayId.java: New file.
	* gnu/classpath/jdwp/id/ArrayReferenceTypeId.java: New file.
	* gnu/classpath/jdwp/id/ClassLoaderId.java: New file.
	* gnu/classpath/jdwp/id/ClassObjectId.java: New file.
	* gnu/classpath/jdwp/id/ClassReferenceTypeId.java: New file.
	* gnu/classpath/jdwp/id/InterfaceReferenceTypeId.java: New file.
	* gnu/classpath/jdwp/id/JdwpId.java: New file.
	* gnu/classpath/jdwp/id/ObjectId.java: New file.
	* gnu/classpath/jdwp/id/ReferenceTypeId.java: New file.
	* gnu/classpath/jdwp/id/StringId.java: New file.
	* gnu/classpath/jdwp/id/ThreadGroupId.java: New file.
	* gnu/classpath/jdwp/id/ThreadId.java: New file.

2005-06-14  Tom Tromey  <tromey@redhat.com>

	PR libgcj/19877:
	* configure, aclocal.m4, Makefile.in: Rebuilt.

2005-06-14  Tom Tromey  <tromey@redhat.com>

	* java/lang/Class.java (getClasses): New method.
	(internalGetClasses): Likewise.
	(getClassLoader): Updated documentation.
	(getDeclaredClasses): New overload; old overload no longer
	native.
	(_getConstructors): Removed.
	(resourcePath): Updated.
	* java/lang/natClass.cc (getClasses): Removed.
	* java/lang/Class.h (getDeclaredClasses, getDeclaredConstructors):
	Updated.
	(_getConstructors): Removed.

2005-06-13  Jim Huang  <jserv@kaffe.org>

	PR libgcj/22036:
	* jni.cc (_Jv_JNI_NewObjectV): Use chars() method.
	(_Jv_JNI_NewObject): Likewise.

2005-06-13  Tom Tromey  <tromey@redhat.com>

	PR java/21844:
	* testsuite/libjava.lang/pr21844.java: New file.
	* testsuite/libjava.lang/pr21844.out: New file.

2005-06-08  Bryce McKinlay  <mckinlay@redhat.com>

	PR libgcj/21949
	* java/rmi/server/RMIClassLoader.java (getClassLoader): Make public.
	From Gary Benson.

2005-06-08  Ziga Mahkovec  <ziga.mahkovec@klika.si>

	* java/text/MessageFormat.java (parse): When parsing strings, check
	for an empty pattern trailer.

2005-06-06  Keith Seitz  <keiths@redhat.com>

	* gnu/classpath/jdwp/util/Signature.java: New file.
	* gnu/classpath/jdwp/transport/JdwpConnection.java: New file.

2005-06-05  Anthony Green  <green@redhat.com>

	* gnu/java/net/natPlainSocketImplPosix.cc (setOption): Fix case
	fall-through bug.

2005-06-04  Anthony Green  <green@redhat.com>

	* java/net/URLClassLoader.java: import gnu.gcj.Core,
	and gnu.java.net.protocol.core.CoreInputStream.
	(CureURLLoader): New class.
	(CoreResource): New class.
	(addURLImpl): Add special treatment for the "core" protocol.
	* gnu/gcj/natCore.cc (find): New method.
	* gnu/gcj/Core.java (find): New method.

2005-06-03  Keith Seitz  <keiths@redhat.com>

	* gnu/classpath/jdwp/transport/ITransport.java: New file.
	* gnu/classpath/jdwp/transport/SocketTransport.java: New file.
	* gnu/classpath/jdwp/transport/TransportFactory.java: New file.

2005-06-03  Andreas Tobler  <a.tobler@schweiz.ch>

	* jawt.c: Remove malloc.h, covered by stdlib.h.

	* testsuite/libjava.jni/jni.exp
	(gcj_jni_invocation_compile_c_to_binary): Add -bind_at_load to silence
	the build process.

2005-06-02  Keith Seitz  <keiths@redhat.com>

	* gnu/classpath/jdwp/transport/TransportException.java: New file.

2005-06-02  Andreas Tobler  <a.tobler@schweiz.ch>

	* mauve-libgcj: Remove implemented classes from the fail section.
	Add two new not implemented to it.

2005-06-01  Bryce McKinlay  <mckinlay@redhat.com>

	* configure.ac (BACKTRACESPEC): Remove definition, but continue to
	AC_SUBST definition from configure.host.
	* configure.host: Don't use -fno-omit-frame-pointer. Set BACKTRACESPEC
	to -fomit-frame-pointer on 32-bit x86 targets.

2005-06-01  Tom Tromey  <tromey@redhat.com>

	* java/io/ObjectInputStream.java (currentLoader): Fixed typo.

2005-06-01  Ziga Mahkovec  <ziga.mahkovec@klika.si>

	PR libgcj/20435:
	* gnu/regexp/RESyntax.java (RE_POSSESSIVE_OPS): New field.
	(static): Add possessive matching to JAVA_1_4 syntax.
	* gnu/regexp/RETokenRepeated.java (possessive): New field.
	(makePossessive, isPossessive): New methods.
	(match): Don't back off during possessive matching.
	* gnu/regexp/RE.java (initalize): Accept possessive quantifier.
	* java/util/regex/Pattern.java (constructor): Switch syntax from PERL5
	to JAVA_1_4.

2005-06-01  Keith Seitz  <keiths@redhat.com>

	* gnu/classpath/jdwp/transport/JdwpPacket.java: New file.
	* gnu/classpath/jdwp/transport/JdwpCommandPacket.java: New file.
	* gnu/classpath/jdwp/transport/JdwpReplyPacket.java: New file.

2005-06-01  Tom Tromey  <tromey@redhat.com>

	PR libgcj/21785:
	* java/io/natObjectInputStream.cc (currentClassLoader): Removed.
	(currentLoader): New method.
	* java/io/ObjectInputStream.java (resolveProxyClass): Use
	currentLoader.
	(currentLoader): Now native.
	(currentClassLoader): Removed.
	* testsuite/libjava.lang/pr21785.java: New file.
	* testsuite/libjava.lang/pr21785.out: New file.

2005-06-01  Tom Tromey  <tromey@redhat.com>

	PR libgcj/21753:
	* java/lang/natString.cc (substring): Changed sharing heuristic.

2005-05-30  Bryce McKinlay  <mckinlay@redhat.com>

	PR libgcj/21821
	* gnu/java/nio/channels/natFileChannelPosix.cc (open): Don't use
	MAXPATHLEN. Format exception message using a StringBuffer instead.

2005-05-29  Michael Koch  <konqueror@gmx.de>

	PR libgcj/20273:
	* java/util/LinkedHashMap.java (access): Set 'root.pred'.

2005-05-27  Ziga Mahkovec  <ziga.mahkovec@klika.si>

	* ChangeLog: Fix typo.

2005-05-26  Ranjit Mathew  <rmathew@hotmail.com>

	Testsuite adjustments for PR java/19870.
	* testsuite/libjava.lang/PR19870.java: New testcase.
	* testsuite/libjava.lang/PR19870.out: Expected output for the
	testcase.
	* testsuite/libjava.jacks/jacks.xfail: Add
	8.5.2-accessible-static-member-usage-3 and 15.8.4-static-2


2005-05-26  Bryce McKinlay  <mckinlay@redhat.com>

	* include/jvm.h (FLAG_BINARYCOMPAT_ABI, FLAG_BOOTSTRAP_LOADER): New.
	(GCJ_BINARYCOMPAT_ADDITION, GCJ_BOOTSTRAP_LOADER_ADDITION): Removed.
	(OLD_GCJ_40_BC_ABI_VERSION): Renamed. Old-style version ID for BC-ABI
	classes.
	(GCJ_CXX_ABI_VERSION): Renamed from GCJ_ABI_VERSION.
	(GCJ_40_BC_ABI_VERSION): New. Calculate version	IDs using new method.
	(_Jv_CheckABIVersion): Check for both old and new style version IDs.
	(_Jv_ClassForBootstrapLoader): Use FLAG_BOOTSTRAP_LOADER. 

2005-05-25  Richard Henderson  <rth@redhat.com>

	PR libgcj/21692
	* sysdep/descriptor-n.h: New file.
	* sysdep/descriptor-y.h: New file.
	* sysdep/powerpc/descriptor.h: New file.
	* configure.host: Set $descriptor_h appropriate for the host.
	* configure.ac: Link it.
	* configure: Regenerate.
	* stacktrace.cc: Include sysdep/descriptor.h.
	(_Jv_StackTrace::UpdateNCodeMap): Use UNWRAP_FUNCTION_DESCRIPTOR.

2005-05-25  Chris Burdess  <dog@gnu.org>

	* gnu/xml/dom/ls/SAXEventSink.java: Ignore XML entities in start/
	end entity callbacks.

2005-05-24  Gary Benson  <gbenson@redhat.com>

	PR libgcj/21736:
	* java/text/MessageFormat.java (MessageFormatElement.setLocale):
	Handle DateFormat.DEFAULT case correctly.

2005-05-21  Tom Tromey  <tromey@redhat.com>

	PR libgcj/21703:
	* java/lang/ref/natReference.cc (find_slot): Handle case where
	table has no NULL entries.
	* java/lang/natString.cc (_Jv_StringFindSlot): Handle case where
	table has no NULL entries.

2005-05-22  Andreas Jaeger  <aj@suse.de>

	* java/lang/mprec.c (mult, lshift, b2d, d2b): Add parenthesis to
	avoid warnings.

2005-05-21  Ranjit Mathew  <rmathew@hotmail.com>

	* testsuite/libjava.jacks/jacks.xfail: Remove 3.10.2-round-6.

2005-05-19  Richard Henderson  <rth@redhat.com>

	* exception.cc: Revert 05-17 gcc_unreachable change.

2005-05-19  Bryce McKinlay  <mckinlay@redhat.com>

	* java/lang/natClassLoader.cc (_Jv_NewClass): Use
	_Jv_RegisterInitiatingLoader to register array classes, not
	_Jv_RegisterClass.
	(_Jv_RegisterInitiatingLoader): Give up if called very early during
	bootstrapping. Add a FIXME to handle this case better.

2005-05-19  Bryce McKinlay  <mckinlay@redhat.com>

	* Makefile.am (libgcj0_convenience_la): Removed. Don't build a libgcj
	convenience library.
	(libgcj_la_SOURCES): New. Move sources here.
	(libgcj.la): Remove rule.

2005-05-18  Thomas Fitzsimmons  <fitzsim@redhat.com>

	PR libgcj/19729
	* gnu/java/security/provider/DSASignature.java: Import updates
	from GNU Crypto.

2005-05-18  Anthony Green  <green@redhat.com>

	* jni/gtk-peer/gtk_jawt.c (classpath_jawt_object_lock,
	classpath_jawt_object_unlock, classpath_jawt_create_lock,
	classpath_jawt_destroy_lock): New functions.
	* jni/classpath/classpath_jawt.h (classpath_jawt_object_lock,
	classpath_jawt_object_unlock, classpath_jawt_create_lock,
	classpath_jawt_destroy_lock): New functions.
	* include/jawt.h (struct _JAWT_DrawingSurface): Add lock
	field.
	* jawt.c: #include malloc.h.
	(_Jv_Lock): Use lock.
	(_Jv_Unlock): Ditto.
	(_Jv_GetDrawingSurface): Initialize lock.
	(_Jv_FreeDrawingSurface): Destroy lock.
	(_Jv_FreeDrawingSurfaceInfo): Free platformInfo.

2005-05-18  Paolo Bonzini  <bonzini@gnu.org>

	* Makefile.am (Makefile.deps): Do not use \0, it is unportable.
	* Makefile.in: Regenerate.

2005-05-17  Kelley Cook  <kcook@gcc.gnu.org>

	* configure.ac: Use AC_C_BIGENDIAN instead of AC_C_BIGENDIAN_CROSS.
	Use AC_CHECK_SIZEOF instead of AC_COMPILE_CHECK_SIZEOF.
	* aclocal.m4, configure, config.h.in, include/config.h.in,
	Makefile.in, include/Makefile.in, testsuite/Makefile.in,
	external/Makefile.in, external/sax/Makefile.in,
	external/w3c_dom/Makefile.in, gcj/Makefile.in: Regenerate.

2005-05-17  David Daney  <ddaney@avtrex.com>

	PR libgcj/18220
	* testsuite/libjava.lang/Process_3.java (run):  Exit on error.

2005-05-17  Nathan Sidwell  <nathan@codesourcery.com>

	* exception.cc (abort): Remove std::abort hack.
	(gcc_unreacheable): Define.

2005-05-17  Paolo Bonzini  <bonzini@gnu.org>

	* Makefile.am (Makefile.deps): Do not create native.list and
	bytecodes.list.
	(all_native_compiled_dirs, all_java_dirs): Compute dir list here.
	* Makefile.in: Regenerate.

2005-05-17  Paolo Bonzini  <bonzini@gnu.org>

	* configure.ac (--enable-libgcj-multifile): Remove.

	* Makefile.am (all_native_compiled_source_files,
	(all_native_compiled_dirs, all_java_dirs, all_java_lo_files,
	all_libgcj_lo_files, all_xlib_lo_files,
	all_java_deps_files, all_java_stamp_files,
	all_java_filelist_files): New variables.
	(EXTRA_DIST): New Automake variable.
	(CLEANFILES): Add .stamp, .list and .lo files.
	(%.list, %.lo, %.stamp, Makefile.deps): New rules.
	(classes.stamp): Depend on $(all_java_stamp_files).
	(libgcj.la): Pass $(libgcj_la_LIBADD) to the linker without
	going through write_entries_to_file.

	(all_java_source_files, all_property_files): Move earlier.
	(libgcj_la_OBJECTS, javao_files, xlib_javao_files,
	all_java_class_files): Remove.
	(gtk_awt_peer_sources): Rename to...
	(gtk_awt_peer_source_files): ... this.  Adjust throughout.

	(ONESTEP): Remove.
	(libgcj0_convenience_la_SOURCES): Remove Java source files.
	(libgcj0_convenience_la_LIBADD): Add $(all_libgcj_lo_files).
	(libgcj0_convenience_la_DEPENDENCIES): Likewise.
	(libgcj_la_SOURCES): Remove.
	(lib_gnu_awt_xlib_la_SOURCES): Remove Java source files.
	(lib_gnu_awt_xlib_la_LIBADD): Add $(all_xlib_lo_files).
	(lib_gnu_awt_xlib_la_DEPENDENCIES): Likewise.

	* configure: Regenerate.
	* Makefile.in: Regenerate.
	* external/Makefile.in: Regenerate.
	* external/sax/Makefile.in: Regenerate.
	* external/w3c_dom/Makefile.in: Regenerate.
	* gcj/Makefile.in: Regenerate.
	* include/Makefile.in: Regenerate.
	* libltdl/Makefile.in: Regenerate.
	* testsuite/Makefile.in: Regenerate.

2005-05-16  Tom Tromey  <tromey@redhat.com>

	* java/nio/charset/Charset.java (encode, decode): Synchronize on
	'this', not the class.

2005-05-16  Tom Tromey  <tromey@redhat.com>

	* gnu/java/net/protocol/http/Headers.java (parse): Include final
	character of line.

2005-05-16  Tom Tromey  <tromey@redhat.com>

	PR libgcj/21606:
	* java/net/URI.java (unquote): Handle lower-case letters as well.

2005-05-16  Ziga Mahkovec  <ziga.mahkovec@klika.si>

	PR libgcj/20504
	* gnu/regexp/RE.java: Add support for quoting constructs.

2005-05-15  Tom Tromey  <tromey@redhat.com>

	* java/lang/String.java (startsWith): Fixed javadoc.

2005-05-15  Tom Tromey  <tromey@redhat.com>

	PR java/21519:
	* testsuite/libjava.compile/pr21519.java: New file.
	* testsuite/libjava.compile/pr21519.no-link: New file.

2005-05-15  Tom Tromey  <tromey@redhat.com>

	* stacktrace.cc (getLineNumberForFrame): Use _Jv_GetSafeArg.

2005-05-13  Bryce McKinlay  <mckinlay@redhat.com>

	PR libgcj/21557
	* java/lang/natObject.cc (_Jv_MonitorEnter): Save and clear thread
	interrupt status flag if _Jv_CondWait is interrupted.

2005-05-13  Tom Tromey  <tromey@redhat.com>

	* gnu/gcj/runtime/SystemClassLoader.java (init): Handle empty
	element in path.

2005-05-12  Bryce McKinlay  <mckinlay@redhat.com>

	* include/jvm.h (gcj::verifyClasses): Declare.
	* link.cc (gcj::verbose_class_flag): Moved.
	* prims.cc (gcj::verifyClasses): Define here.
	(gcj::verbose_class_flag): Move definition here.
	(_Jv_Linker::wait_for_state): Don't call verify_class
	if gcj::verifyClasses is not set.
	* gij.cc (main): Set gcj::verifyClasses when '-noverify' is given.

2005-05-12  Aaron Luchko  <aluchko@redhat.com>

	* gij.cc (main): Recognize '-verify', '-noverify', and
	'-verifyremote'

2005-05-12  Kaz Kojima  <kkojima@gcc.gnu.org>

	* configure.host: Set IEEESPEC to -mieee for sh*-*-*.

2005-05-12  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* Makefile.am (cond_gtk_gcjawt_ltlibrary): Rename libjawt.la
	libgcjawt.la.

2005-05-11  Tom Tromey  <tromey@redhat.com>

	* external/w3c_dom/Makefile.in: Rebuilt.
	* external/w3c_dom/Makefile.am (libw3c_gcj_la_GCJFLAGS): Added
	-fbootstrap-classes.
	* external/sax/Makefile.in: Rebuilt.
	* external/sax/Makefile.am (libsax_gcj_la_GCJFLAGS): Added
	-fbootstrap-classes.
	* java/lang/Class.h (_Jv_CopyClassesToSystemLoader): Declare as
	friend.
	* java/lang/natVMClassLoader.cc (getSystemClassLoaderInternal):
	Call _Jv_CopyClassesToSystemLoader.
	* java/lang/natClassLoader.cc (system_class_list): New global.
	(_Jv_RegisterClassHookDefault): Handle bootstrap and system
	classes differently.
	(_Jv_CopyClassesToSystemLoader): New function.
	(SYSTEM_LOADER_INITIALIZED): New define.
	* include/jvm.h (GCJ_BOOTSTRAP_LOADER_ADDITION): New define.
	(_Jv_CheckABIVersion): Use it.
	(_Jv_ClassForBootstrapLoader): New function.
	* Makefile.in: Rebuilt.
	* Makefile.am (AM_GCJFLAGS): Added -fbootstrap-classes.

2005-05-10  Tom Tromey  <tromey@redhat.com>

	* gcj/javaprims.h: Updated.
	* java/lang/String.java (String(StringBuilder)): New constructor.
	* java/lang/natStringBuilder.cc: New file.
	* java/lang/StringBuilder.java: New file.
	* Makefile.in: Rebuilt.
	* Makefile.am (core_java_source_files): Added StringBuilder.java.
	(nat_source_files): Added natStringBuilder.cc.

2005-05-10  Paolo Bonzini  <bonzini@gnu.org>

	PR java/21436
	* testsuite/libjava.jacks/jacks.xfail: Adjust.

2005-05-09  Mike Stump  <mrs@apple.com>

	* configure: Regenerate.

2005-05-09  David Daney  <ddaney@avtrex.com>

	* java/util/BitSet.java (get(int, int)): Fix breakage when
	requested set doesn't start on a multiple of 64.

2005-05-07  Matthias Klose  <doko@debian.org>

	* gnu/java/awt/peer/gtk/GtkVolatileImage.java: Add imports.

2005-05-06  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* Makefile.am (gtk_awt_peer_sources): Add GtkVolatileImage.java.
	* Makefile.in: Regenerate.
	* gnu/java/awt/peer/gtk/GdkGraphicsConfiguration.java
	(createCompatibleVolatileImage(int,int)): Implement.
	(createCompatibleVolatileImage(int,int,ImageCapabilities)):
	Likewise.
	* gnu/java/awt/peer/gtk/GtkComponentPeer.java (backBuffer, caps):
	New fields.
	(createVolatileImage): Implement.
	(createBuffers): Likewise.
	(getBackBuffer): Likewise.
	(flip): Likewise.
	(destroyBuffers): Likewise.
	* gnu/java/awt/peer/gtk/GtkVolatileImage.java: New file.
	* java/awt/Canvas.java (CanvasBltBufferStrategy): New class.
	(CanvasFlipBufferStrategy): Likewise.
	(createBufferStrategy(int)): New method.
	(createBufferStrategy(int,BufferCapabilities)): Likewise.
	* java/awt/Component.java (BltBufferStrategy): Implement and
	document class.
	(FlipBufferStrategy): Likewise.
	* java/awt/Window.java (WindowBltBufferStrategy): New class.
	(WindowFlipBufferStrategy): Likewise.
	(createBufferStrategy(int)): New method.
	(createBufferStrategy(int,BufferCapabilities)): Likewise.
	(getBufferStrategy): Likewise.
	* java/awt/BufferCapabilities.java (BufferCapabilities): Rename
	front to frontCaps and back to backCaps.

2005-05-06  Michael Koch  <konqueror@gmx.de>

	* java/awt/BufferCapabilities.java
	(BufferCapabilities): Merged javadoc.

2005-05-06  Michael Koch  <konqueror@gmx.de>

	* java/util/Locale.java
	(defaultLocale): Use gnu.classpath.SystemProperties to get properties.
	(getLocale): New methods. Use it everywhere where instances of Locales
	are needed.
	(getDisplayLanguage): Merged javadoc.
	(getDisplayCountry): Likewise.
	(getDisplayVariant): Likewise.

2005-05-06  Archie Cobbs  <archie@dellroad.org>

	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkPixbufDecoder.c:
	use DeleteLocalRef() to avoid exhausting local native references.

2005-05-06  Mark Wielaard  <mark@klomp.org>

	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c:
	(window_delete_cb): Don't use C++ style comments.

2005-05-06  Robert Schuster  <thebohemian@gmx.net>

	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c: Fixed
	copyright header.

2005-05-06  Robert Schuster  <thebohemian@gmx.net>

	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c:
	(window_delete_cb): Made the function return TRUE.

2005-05-06  Roman Kennke  <roman@kennke.org>

	* javax/swing/text/PlainView.java
	(drawUnselectedText): Call Utilities.drawTabbedText() with correct
	offset parameter.
	* javax/swing/text/Utilities.java
	(drawTabbedText): Initilialize local variable pos correctly.

2005-05-06  Roman Kennke  <roman@kennke.org>

	* javax/swing/text/AbstractDocument.java
	(LeafElement): Made start and end package private fields for
	effective reindexing.
	* javax/swing/text/PlainDocument.java
	(constructor): The field rootElement is always BranchElement,
	so we handle it as such.
	(removeUpdate): Rewritten reindexing for removeUpdate so that
	the actual removal is taken into account.

2005-05-06  Roman Kennke  <roman@kennke.org>

	* javax/swing/text/GapContent.java:
	Removed debugging output stuff, which I accidentally left in.

2005-05-06  Roman Kennke  <roman@kennke.org>

	* javax/swing/text/GapContent.java:
	Implemented a real GapContent. Only the public methods have
	been implemented so far and still no UndoableEdit support.

2005-05-04  H.J. Lu  <hongjiu.lu@intel.com>

	* java/awt/BufferCapabilities.java (BufferCapabilities): Fix
	the typo.

2005-05-04  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* java/awt/image/BufferStrategy.java: Document.

	* java/awt/BufferCapabilities.java: Document.

2005-05-04  Tom Tromey  <tromey@redhat.com>

	* java/nio/channels/FileLock.java (toString): Entirely avoid
	String "+".

2005-05-04  Andrew Overholt  <overholt@redhat.com>

	* java/nio/channels/FileLock.java (toString): Re-implement using
	StringBuffer.

2005-05-04  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* java/awt/ImageCapabilities.java: Document.

	* java/awt/image/VolatileImage.java: Unindent copyright header.

2005-05-03  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* java/awt/image/VolatileImage.java: Document.

2005-05-03  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkToolkit.c
	(init_glib_threads): Check if threading system is already
	initialized.

2005-05-03  Andrew Overholt  <overholt@redhat.com>

	PR libgcj/21372:
	* gnu/java/nio/channels/FileChannelImpl.java: Return null if lock
	could not be acquired.
	* java/nio/channels/FileLock.java (toString): Re-implement to be
	in line with other implementations.

2005-05-03  Tom Tromey  <tromey@redhat.com>

	* java/lang/VMSecurityManager.java (currentClassLoader): Use
	'systemClasssLoader' directly.

2005-05-03  Tom Tromey  <tromey@redhat.com>

	* java/lang/VMSecurityManager.java (currentClassLoader): Don't
	call VMClassLoader.getSystemClassLoader.

2005-04-29  Michael Koch  <konqueror@gmx.de>

	* java/net/NetworkInterface.java
	(static): Removed.
	(NetworkInterface(String,InetAddress)): Made package-private.
	(NetworkInterface(String,InetAddress[])): New constructor.
	(getRealNetworkInterfaces): Removed.
	(getByName): Use VMNetworkInterface.getInterfaces().
	(getByInetAddress): Likewise.
	(getNetworkInterfaces): Likewise.
	* java/net/VMNetworkInterface.java,
	java/net/natVMNetworkInterfaceNoNet.cc,
	java/net/natVMNetworkInterfacePosix.c,c
	java/net/natVMNetworkInterfaceWin32.cc: New files.
	* java/net/natNetworkInterfaceNoNet.cc,
	java/net/natNetworkInterfacePosix.cc,
	 java/net/natNetworkInterfaceWin32.cc: Removed.
	* configure.ac
	* Makefile.am
	* configure, Makefile.in: Regenerated.

2005-04-29  Andrew Haley  <aph@redhat.com>

	* java/lang/Class.h (_Jv_ResolvePoolEntry): Declare as friend.

2005-04-29  Dalibor Topic  <robilad@kaffe.org>

	* java/nio/channels/FileChannelImpl.java
	(FileChannelImpl(String, int)): Removed.
	(FileChannelImpl(File, int)): Added. Check if opened file is a
	directory.
	* java/io/FileInputStream.java(FileInputStream): Fixed javadocs.
	Call FileChannelImpl(File, int).
	* java/io/FileOutputStream.java (FileInputStream): Call
	FileChannelImpl(File, int).
	* java/io/RandomAccessFile.java (RandomAccessFile):
	Call FileChannelImpl(File, int). Switched constructors around.

2005-04-27  Andrew Haley  <aph@redhat.com>

	PR java/19285
	* prims.cc (_Jv_ResolvePoolEntry): New function.
	* include/jvm.h (_Jv_Linker::find_field): New arg: found_class.
	* link.cc (_Jv_Linker::find_field): New arg: found_class.
	(resolve_pool_entry): Initialize the class in which a field is
	found.
	(link_symbol_table): Pass new arg to found_class.

2005-04-29  Michael Koch  <konqueror@gmx.de>

	* java/nio/charset/Charset.java
	(provider): Reformatted.

2005-04-29  Michael Koch  <konqueror@gmx.de>

	* gnu/java/net/protocol/http/HTTPConnection.java:
	(userAgent): Initialize from system properties.
	(initUserAgent): Removed.

2005-04-29  Mark Wielaard  <mark@klomp.org>

	* java/util/ResourceBundle.java (getObject): Clarify
	MissingResourceException detailed message.
	(tryBundle(String,ClassLoader)): Likewise.

2005-04-29  Robert Schuster  <thebohemian@gmx.net>

	* java/beans/FeatureDescriptor.java:
	(getShortDescription): Implemented fallback mechanism and fixed
	documentation (fixes bug #12637).
	(getDisplayName): Dito.

2005-04-29  Robert Schuster  <thebohemian@gmx.net>

	* java/beans/Introspector.java: Fixed bug #12624, BeanDescriptors
	will now be set correctly.
	(flushCaches): Now flushes all cached intermediate data.

2005-04-28  Michael Koch  <konqueror@gmx.de>

	* java/net/InetAddress.java
	(aton): Fixed javadoc.
	(lookup): Likewise.

2005-04-28  Tom Tromey  <tromey@redhat.com>

	* javax/swing/Timer.java
	(drainEvents, queueEvent): Now package-private.

2005-04-28  Audrius Meskauskas  <audriusa@bluewin.ch>

	* javax/swing/Timer.java
	(constructor): Assigning initialDelay.

2005-04-28  Audrius Meskauskas  <audriusa@bluewin.ch>

	* javax/swing/Timer.java
	(Waker.run): firing the first action event.

2005-04-28  Michael Koch  <konqueror@gmx.de>

	* javax/swing/Timer.java: Reordered all fields and methods,
	Added more javadocs.

2005-04-28  Michael Koch  <konqueror@gmx.de>

	* javax/swing/Timer.java: Javadocs merged
	from GNU classpath.

2005-04-28  Jeroen Frijters  <jeroen@frijters.net>

	* gnu/java/net/protocol/file/Connection.java
	(StaticData): New inner class to contain statics.
	(connect, getHeaderField): Modified to use StaticData.

2005-04-28  Michael Koch  <konqueror@gmx.de>

	* gnu/java/net/protocol/file/Connection.java
	(lineSeparator): Initialize with SystemProperties.getProperty().

2005-04-27  Chris Burdess  <dog@gnu.org>

	* gnu/java/net/protocol/file/Connection.java: Return correct content
	length for directory listing.
	* java/net/URLClassLoader.java: Correction for URLClassLoader, bug
	#11285: return valid URLs for directories.i

2005-04-27  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* Makefile.am (ordinary_java_source_files): Add
	gnu/java/net/protocol/https/Handler.java.
	* Makefile.in: Regenerate.
	* java/net/URL.java: Remove org.metastatic.jessie from default
	protocol search path.

2005-04-27  Chris Burdess  <dog@gnu.org>

	* gnu/java/net/protocol/https/Handler.java: New file.

2005-04-27  Jeroen Frijters  <jeroen@frijters.net>

	* javax/imageio/spi/IIORegistry.java (IIORegistry):
	Don't assume that awt Toolkit is always ClasspathToolkit.

2005-04-27  Chris Burdess  <dog@gnu.org>

	* java/net/protocol/http/HTTPURLConnection.java (connect): Accept
	absolute and relative paths in Location header.

2005-04-27  Chris Burdess  <dog@gnu.org>

	* gnu/java/net/protocol/http/HTTPURLConnection.java: Throw
	FileNotFoundException and implement getErrorStream on 404.

2005-04-27  Sven de Marothy <sven@physto.se>

	* java/util/TimeZone.java,
	(getDefaultDisplayName): Fix previous fix.

2005-04-27  Sven de Marothy <sven@physto.se>

	* java/util/TimeZone.java,
	(getDefaultDisplayName): Don't print zero offsets.

2005-04-27  Roman Kennke  <roman@kennke.org>

	* javax/swing/plaf/basic/BasicScrollBarUI
	(getThumbBounds): Do not make thumb smaller than
	minimumThumbSize.
	* javax/swing/plaf/metal/MetalLookAndFeel
	(initComponentDefaults): Added color defaults for ScrollBar.
	* javax/swing/plaf/metal/MetalScrollBarUI
	(paintThumb): Added.
	(getMinimumThumbSize): Added.

2005-04-27  Roman Kennke  <roman@kennke.org>

	* javax/swing/plaf/metal/MetalLookAndFeel
	(initComponentDefaults): Added some default colors.

2005-04-27  Roman Kennke  <roman@kennke.org>

	* javax/swing/plaf/basic/BasicScrollBarUI.java
	(configureScrollBarColors: Changed key 'ScrollBar.thumbLightShadow'
	to 'ScrollBar.thumbShadow'. The formes does not exist.
	(paintThumb): Use BasicGraphicsUtils for painting the thumb.

2005-04-27  Roman Kennke  <roman@kennke.org>

	* java/awt/MediaTracker.java: Added 2005 to copyright statement.
	* javax/swing/BoxLayout.java: Likewise.
	* javax/swing/UIManager.java: Likewise.
	* javax/swing/plaf/basic/BasicButtonListener.java: Likewise.
	* javax/swing/plaf/basic/BasicGraphicsUtils.java: Likewise.
	* javax/swing/plaf/basic/BasicLookAndFeel.java: Likewise.
	* javax/swing/plaf/basic/BasicMenuItemUI.java: Likewise.
	* javax/swing/plaf/basic/BasicScrollPaneUI.java: Likewise.
	* javax/swing/plaf/metal/MetalLookAndFeel.java: Likewise.
	* javax/swing/text/Document.java: Likewise.
	* javax/swing/text/GapContent.java: Likewise.
	* javax/swing/text/SimpleAttributeSet.java: Likewise.
	* javax/swing/tree/DefaultTreeSelectionModel.java: Likewise.

2005-04-27  Roman Kennke  <roman@kennke.org>

	* javax/swing/plaf/basic/BasicToggleButtonUI.java:
	(getPropertyPrefix): Added.

2005-04-27  Roman Kennke  <roman@kennke.org>

	* javax/swing/plaf/basic/BasicButtonUI.java
	(getPropertyPrefix): Added.
	(installDefaults): Use getPropertyPrefix instead of hard-coded
	prefix.

2005-04-27  Roman Kennke  <roman@kennke.org>

	* javax/swing/JToggleButton.java
	(JToggleButton): Removed horizontalAlignment setting, this
	was wrong. Added setting of an actionCommand, ToggleButtons
	have "" as default actionCommand.

2005-04-27  Michael Koch  <konqueror@gmx.de>

	* java/nio/charset/Charset.java (providers2): Renamed from 'providers'
	to work around CNI limitation.

2005-04-27  Sven de Marothy  <sven@physto.se>

	* java/nio/charset/Charset.java:
	(defaultCharset()): New method.
	Status updated to 1.5

2005-04-27  Sven de Marothy  <sven@physto.se>

	* java/nio/charset/Charset.java: Cached encoders shouldn't be static.

2005-04-27  Sven de Marothy  <sven@physto.se>

	* java/nio/charset/Charset.java: Reset cached de/encoders.

2005-04-27  Robert Schuster <thebohemian@gmx.net>

	* java/nio/charset/Charset.java (forName): Throws
	IllegalArgumentException when argument is null
	and added documentation.

2005-04-27  Ito Kazumitsu  <kaz@maczuka.gcd.org>

	* java/nio/charset/Charset.java (providers):
	New method to make an array of CharsetProviders defined in
	META-INF/services/java.nio.charset.spi.CharsetProvider.
	(charsetForName, availableCharsets): Use the
	new method providers().

2005-04-26  Michael Koch  <konqueror@gmx.de>

	* java/net/InetAddress.java: Made all hexadecimal numbers lowercase.
	Fixed typos in javadocs.
	(isSiteLocalAddress): Fixed handling of byte values.
	(isMCLinkLocal): Likewise.
	* java/net/Inet4Address.java
	(isMulticastAddress): Call super method.
	(isLoopbackAddress): Likewise.
	(isAnyLocalAddress): Likewise.
	(isLinkLocalAddress): Likewise.
	(isSiteLocalAddress): Likewise.
	(isMCGlobal): Likewise.
	(isMCNodeLocal): Likewise.
	(isMCLinkLocal): Likewise.
	(isMCSiteLocal): Likewise.
	(isMCOrgLocal): Likewise.
	(getHostAddress): Likewise.

2005-04-26  Sven de Marothy  <sven@physto.se>

	* java/net/InetAddress.java
	(toString): Don't print empty hostnames.

2005-04-26  Luca Barbieri  <luca.barbieri@gmail.com>

	PR libgcj/21136:
	* gnu/java/nio/channels/FileChannelImpl.java (tryLock): Pass
	'false' to native lock().
	(lock): Pass 'true' to native lock().

2005-04-26  Michael Koch  <konqueror@gmx.de>

	* java/net/InetAddress.java:
	Fixed typos in javadocs.

2005-04-26  Andrew Haley  <aph@redhat.com>

	PR libgcj/21020:
	* jni.cc (_Jv_JNI_GetAnyFieldID): Use class' loader to find
	field's type.

2005-04-26  Tom Tromey  <tromey@redhat.com>

	* javax/swing/text/html/parser/ParserDelegator.java (callBack,
	gnu): Now package-private.
	* javax/swing/text/html/parser/DocumentParser.java (parser,
	callBack, gnu): Now package-private.
	* javax/swing/text/StringContent.java (content, setOffset,
	checkLocation): Now package-private.
	* javax/swing/text/JTextComponent.java (doc): Now
	package-private.
	* javax/swing/plaf/basic/BasicToolBarUI.java (owner,
	lastGoodOrientation, origParent, borders, cachedBounds,
	cachedOrientation, DragWindow): Now package-private.
	* javax/swing/plaf/basic/BasicTabbedPaneUI.java (incrButton,
	decrButton, viewport, panel, currentScrollLocation, layoutManager,
	tabAreaRect, contentRect, createIncreaseButton,
	createDecreaseButton, findPointForIndex): Now package-private.
	* javax/swing/plaf/basic/BasicSplitPaneDivider.java
	(currentDividerLocation, moveDividerTo): Now package-private.
	* javax/swing/plaf/basic/BasicSliderUI.java (findClosestTick): Now
	package-private.
	* javax/swing/plaf/basic/BasicScrollBarUI.java
	(calculatePreferredSize, valueForYPosition, valueForXPosition):
	Now package-private.
	* javax/swing/plaf/basic/BasicPopupMenuUI.java
	(topWindowListener): Now package-private.
	* javax/swing/plaf/basic/BasicOptionPaneUI.java (iconSize,
	OK_STRING, YES_STRING, NO_STRING, CANCEL_STRING): Now constants.
	(messageAreaContainer, buttonContainer, resetSelectedValue): Now
	package-private.
	* javax/swing/plaf/basic/BasicListUI.java (damageLayout): Now
	package-private.
	* javax/swing/plaf/basic/BasicInternalFrameTitlePane.java (title):
	Now package-private.
	* javax/swing/plaf/basic/BasicDesktopIconUI.java (button): Now
	package-private.
	* javax/swing/plaf/basic/BasicComboBoxUI.java (largestItemSize,
	borderInsets): Now package-private.
	(arrowButtonWidth): Likewise.  Now a constant.
	* javax/swing/plaf/basic/BasicColorChooserUI.java (chooser, pane,
	makeTabs, updatePreviewPanel): Now package-private.
	* javax/swing/plaf/basic/BasicArrowButton.java (shadow,
	darkShadow, highlight): Now package-private.
	* javax/swing/colorchooser/DefaultSwatchChooserPanel.java
	(addColorToQueue): Now package-private.
	* javax/swing/colorchooser/DefaultRGBChooserPanel.java
	(spinnerChange, sliderChange, updateChange, R, G, B, RSpinner,
	GSpinner, BSpinner): Now package-private.
	* javax/swing/colorchooser/DefaultHSBChooserPanel.java
	(gradientImage, trackImage, slider, hRadio, sRadio, bRadio,
	hSpinner, sSpinner, bSpinner, gradientPoint, internalChange,
	spinnerTrigger, locked, handlingMouse, updateImage, updateSlider,
	updateTrack): Now package-private.
	* javax/swing/TransferHandler.java (clipboard): Now
	package-private.
	* javax/swing/ToolTipManager.java (showTip, hideTip): Now
	package-private.
	* javax/swing/Timer.java (drainEvents, queueEvent): Now
	package-private.
	* javax/swing/RepaintManager.java (globalManager): Now
	package-private.
	* javax/swing/JFormattedTextField.java (editValid): Now
	package-private.
	* javax/swing/JColorChooser.java (makeModal): Now
	package-private.
	* java/awt/geom/GeneralPath.java (rule, types, xpoints, ypoints,
	index, path): Now package-private.
	* java/awt/geom/Area.java (solids, holes, cubicCubicIntersect,
	lineQuadIntersect, lineCubicIntersect, linesIntersect,
	pointEquals): Now package-private.
	* java/awt/geom/Arc2D.java (type): Now package-private.
	* java/awt/Window.java (windowFocusOwner): Now package-private.
	* java/awt/TextComponent.java (editable, selectionStart,
	selectionEnd, text, getIndexAtPoint, getCharacterBounds): Now
	package-private.
	* java/awt/MenuItem.java (actionCommand, enabled, label): Now
	package-private.
	* java/awt/MenuComponent.java (focusListener): Now
	package-private.
	* java/awt/Frame.java (state): Now package-private.
	* java/awt/Choice.java (pItems): Now package-private.
	* java/awt/Checkbox.java (state): Now package-private.
	* java/awt/Button.java (actionCommand, label): Now
	package-private.
	* gnu/javax/swing/text/html/parser/support/Parser.java
	(attributes, _handleEndTag_remaining, _handleStartTag): Now
	package-private.
	* gnu/java/beans/decoder/PersistenceParser.java (javaHandler): Now
	package-private.
	* gnu/java/awt/peer/gtk/GdkGraphics2D.java (paint, stroke, fg, bg,
	clip, transform, font, comp): Now package-private.

2005-04-26  Tom Tromey  <tromey@redhat.com>

	* java/awt/Robot.java (waitForIdle): Call invokeAndWait in a
	static way.

2005-04-26  Mark Wielaard  <mark@klomp.org>

	* java/net/URL.java (URL(URL,String,URLStreamHandler)): Add spec
	to MalformedURLException.

2005-04-26  Michael Koch  <konqueror@gmx.de>

	* java/security/AccessControlContext.java:
	Reformated.
	(protectedDomains): Renamed from 'protectionDomain'.
	* java/security/AccessController.java:
	Reformatted.

2005-04-26  Jeroen Frijters  <jeroen@frijters.net>

	* gnu/java/security/action/GetSecurityPropertyAction.java
	(GetSecurityPropertyAction): Implement PrivilegedAction instead
	of extending GetPropertyAction.
	(name): New field.
	(value): Likewise.
	(setParamters): New methods.
	(GetSecurityPropertyAction): Use new setParameters methods.

2005-04-26  Jeroen Frijters  <jeroen@frijters.net>

	* java/security/Security.java,
	java/security/cert/X509CRLSelector.java,
	java/security/cert/X509CertSelector.java:
	Modified to use SystemProperties.

2005-04-26  Michael Koch  <konqueror@gmx.de>

	* java/lang/System.java
	(setSecurityManager): Fixed comment.
	(getSecurityManager): Removed obsolete comment.

2005-04-25  Tom Tromey  <tromey@redhat.com>

	* java/awt/AWTKeyStroke.java (vktable): Now package-private.

2005-04-25  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c
	(connectSignals): Realize the window widget after connecting
	signals.

2005-04-25  Jeroen Frijters  <jeroen@frijters.net>

	* java/awt/GraphicsEnvironment.java
	(localGraphicsEnvironment): New field.
	(getLocalGraphicsEnvironment): Added support for java.awt.graphicsenv
	property.
	(isHeadless): Added support for java.awt.headless property.
	(isHeadlessInstance): Call headless().

2005-04-25  Roman Kennke  <roman@kennke.org>

	* gnu/java/awt/peer/gtk/GdkScreenGraphicsDevice.java
	(getDisplayMode): Added. Returns the current display mode.
	(isFullScreenSupported): Added.
	* java/awt/GraphicsDevice.java
	(setFullScreenWindow): Implemented a primitive fullscreen mode.
	This resizes and relocates the fullscreen window so that it uses
	the whole screen. This is not a fully accelerated fullscreen
	exclusive mode.

2005-04-25  Michael Koch  <konqueror@gmx.de>

	* java/lang/Runtime.java,
	java/lang/SecurityManager.java,
	java/lang/System.java,
	java/lang/ThreadGroup.java:
	Replaced java.lang.Runtime.securityManager by
	java.lang.SecurityManager.current (as used in GNU classpath).

2005-04-25  David Gilbert  <david.gilbert@object-refinery.com>

	* java/awt/Transparency.java
	(getTransparency): fixed API docs.

2005-04-25  Archie Cobbs  <archie@dellroad.org>

	* java/lang/Throwable.java: simplify initializing cause in constructor

2005-04-25  Michael Koch  <konqueror@gmx.de>

	* gnu/classpath/SystemProperties.java: New file.
	* gnu/classpath/natSystemProperties.cc: New file.
	* java/lang/Runtime.java
	(defaultProperties): Removed.
	(static): Likewise.
	(): Made thrown exceptions more verbose.
	(insertSystemProperties): Removed.
	* java/lang/System.java
	(static): Likewise.
	(properties): Likewise.
	(setSecurityManager): Reordered modifiers.
	(getenv): Improved javadoc.
	(): Likewise.
	(isWordsBigEndian): Removed.
	* java/lang/natRuntime.cc
	(_Jv_SetDLLSearchPath): Likewise.
	(file_encoding): Likewise.
	(default_file_encoding): Likewise.
	(getpwuid_adaptor): Likewise.
	(insertSystemProperties): Likewise.
	* java/lang/natSystem.cc
	(isWordsBigEndian): Likewise.
	* Makefile.am
	(ordinary_java_source_files):
	Added gnu/classpath/SystemProperties.java.
	(nat_source_files): Added gnu/classpath/natSystemProperties.cc.
	* Makefile.in: Regenerated.

2005-04-25  Roman Kennke  <roman@kennke.org>

	* javax/swing/plaf/basic/BasicScrollBarUI.java
	(initDefaults): Initialize thumb*Color fields correctly.

2005-04-25  Roman Kennke  <roman@kennke.org>

	* javax/swing/text/GapContent.java:
	Added API comments.

2005-04-25  Roman Kennke  <roman@kennke.org>

	* javax/swing/plaf/metal/MetalBorders.java:
	Added inner class ScrollPaneBorder.
	* javax/swing/plaf/metal/MetalLookAndFeel.java
	(initComponentDefaults): Added default for "ScrollPane.border"
	to use the new ScrollPaneBorder.

2005-04-25  Roman Kennke  <roman@kennke.org>

	* javax/swing/text/AbstractDocument.java:
	Added FIXME comments. This class still has to be
	implemented thread-safe.

2005-04-25  Roman Kennke  <roman@kennke.org>

	* javax/swing/tree/DefaultTreeSelectionModel.java
	(DefaultTreeSelectionModel): Initialize listenerList here.

2005-04-25  Roman Kennke  <roman@kennke.org>

	* javax/swing/plaf/metal/MetalTextFieldUI.java
	(createUI): Return one instance per Component instead of a
	shared instance.

2005-04-25  Roman Kennke  <roman@kennke.org>

	* javax/swing/text/Document.java:
	Added API documentation comments.

2005-04-25  Roman Kennke  <roman@kennke.org>

	* javax/swing/text/AbstractDocument.java
	(getDocumentProperties): Implemented.
	(setDocumentProperties): Implemented.
	(getProperty): Implemented.
	(putProperty): Implemented.

2005-04-25  Roman Kennke  <roman@kennke.org>

	* javax/swing/BoxLayout
	(preferredLayoutSize): Fixed computation so that it correctly
	adds the top and bottom insets of the container.

2005-04-25  Roman Kennke  <roman@kennke.org>

	* javax/swing/plaf/basic/BasicMenuItemUI.java
	(paintText): Make use of the 'selectionForeground' UI default
	for text painting.

2005-04-25  Roman Kennke  <roman@kennke.org>

	* javax/swing/plaf/basic/BasicLookAndFeel.java
	(initSystemColorDefaults): Modified colors to match the
	BasicLookAndFeel in the reference implementation.
	(initComponentDefaults): Likewise.

2005-04-25  Tom Tromey  <tromey@redhat.com>

	* include/jni.h (_Jv_va_list): Removed.
	Moved configuration code...
	* include/jni_md.h: ... here.  New file.
	* include/Makefile.in: Rebuilt.
	* include/Makefile.am (tool_include__HEADERS): Added jni_md.h.

2005-04-23  Jeroen Frijters  <jeroen@frijters.net>

	* java/io/FileInputStream.java (FileInputStream(File)),
	java/io/FileOutputStream.java (FileOutputStream(File)):
	Removed unnecessary File.isDirectory() check.

2005-04-22  Bryce McKinlay  <mckinlay@redhat.com>

	* testsuite/lib/libjava.exp (libjava_find_gij): Use $objdir/.. to find
	gij if get_multilibs fails.

2005-04-22  Anthony Green  <green@redhat.com>

	* jni.cc (natrehash): Don't bother clearing memory again.
	* interpret.cc (do_allocate_static_fields): Ditto.
	* java/lang/natString.cc (rehash): Ditto.

2005-04-22  Roman Kennke  <roman@kennke.org>

	* javax/swing/plaf/basic/BasicLookAndFeel.java
	(initComponentDefaults): Changed Button.border to be
	BasicBorders.getButtonBorder as it should be.

2005-04-22  Roman Kennke  <roman@kennke.org>

	* javax/swing/plaf/basic/BasicTabbedPaneUI.java:
	(getMaximumSize): Return (Short.MAX_VALUE, Short.MAX_VALUE) as it
	should according to a mauve testcase, instead of the preferred
	size.

2005-04-22  Roman Kennke  <roman@kennke.org>

	* javax/swing/JMenu.java
	(add): add(Component) now calls PopupMenu.insert(..) instead of
	PopupMenu.add(..). add(..) is not implemented for Component,
	so JComponent.add(..) is called instead, adding the component
	in the wrong place.

2005-04-22  Roman Kennke  <roman@kennke.org>

	* javax/swing/plaf/basic/BasicButtonListener.java
	(mousePressed): replaced query to getModifiersEx with getModifiers.
	This method relied on faulty behaviour in getModifierEx.
	(mouseReleased): replaced query to getModifiersEx with getModifiers.
	This method relied on faulty behaviour in getModifierEx.

2005-04-22  Roman Kennke  <roman@kennke.org>

	* javax/swing/plaf/metal/MetalLookAndFeel.java
	(getDefaults): Call addCustomEntriesToTable on the theme.

2005-04-22  Roman Kennke  <roman@kennke.org>

	* javax/swing/tree/DefaultTreeSelectionModel.java
	(constructor): Added implementation.
	(getRowMapper): Added implementation.
	(setSelectionMode): Added implementation.
	(getSelectionMode): Added implementation.
	(getSelectionPath): Added implementation.
	(getSelectionPaths): Added implementation.
	(getSelectionCount): Added implementation.
	(isSelectionEmpty): Added implementation.
	(getSelectionRows): Added implementation.
	(getMinSelectionRow): Added implementation.
	(getMaxSelectionRow): Added implementation.
	(getLeadSelectionRow): Added implementation.
	(getLeadSelectionPath): Added implementation.

2005-04-22  Casey Marshall <csm@gnu.org>

	* gnu/java/security/der/DERValue.java
	(getValueAs): new method.
	* gnu/java/security/x509/ext/PrivateKeyUsagePeriod.java
	(<init>): read both dates with 'DERValue.getValueAs', with
	'GENERALIZED_TIME' as the argument.

2005-04-22  Andrew Pinski  <pinskia@physics.uc.edu>

	* gnu/gcj/runtime/NameFinder.java (close): IN, OUT, and PROC can all
	be null, check for that case and don't deference it.

2005-04-22  Sven de Marothy  <sven@physto.se>

	* java/util/logging/LogManager.java: Reformatted.
	(readConfiguration): If a logger for a key is not found, create one.

2005-04-22  Andrew John Hughes  <gnu_andrew@member.fsf.org>

	* java/rmi/Naming.java:
	Added class documentation.
	(lookup(String)): Call parseURL and getName.
	(bind(String,java.rmi.Remote)): Likewise.
	(unbind(String)): Likewise.
	(rebind(String, java.rmi.Remote)): Likewise.
	(list(String)): Call parseURL.
	(parseURL(String)): New method to handle parsing and defaults.
	(getName(java.net.URL)): New method to handle finding the service name.

2005-04-21  Tom Tromey  <tromey@redhat.com>

	* java/lang/natClass.cc (initializeClass): Link class.

2005-04-21  Tom Tromey  <tromey@redhat.com>

	* java/lang/AssertionError.java: Typo fix.

2005-04-21  Tom Tromey  <tromey@redhat.com>

	* java/lang/VMClassLoader.java (transformException): Removed.
	(resolveClass): No longer native.  Now does nothing.
	* java/lang/natVMClassLoader.cc (resolveClass): Removed.

2005-04-21  Anthony Green  <green@redhat.com>

	PR libgcj/21115
	* testsuite/libjava.special/special.exp,
	testsuite/libjava.special/pr21115I.java,
	testsuite/libjava.special/pr21115.java,
	testsuite/libjava.special/pr21115.out: New files.

2005-04-21  Chris Burdess  <dog@gnu.org>

	* gnu/java/net/CRLFInputStream.java: Rewrite to return
	CRLF-delimited chunks.

2005-04-20  Andrew John Hughes  <gnu_andrew@member.fsf.org>

	* java/net/URI.java:
	Added class documentation.
	(parseURI(String)): Only handle scheme-specific parts
	if URI is not opaque.  Allow for parts that can't be null.
	(toString()): Output the scheme-specific part whole, rather
	than as its possibly non-existent components.

2005-04-20  Jeroen Frijters  <jeroen@frijters.net>

	* java/net/URI.java (AUTHORITY_REGEXP): Corrected regexp.
	(AUTHORITY_USERINFO_GROUP,AUTHORITY_HOST_GROUP,AUTHORITY_PORT_GROUP):
	Adjusted to match new regexp.

2005-04-20  Michael Koch  <konqueror@gmx.de>

	* gnu/java/net/protocol/file/Connection.java,
	gnu/java/net/protocol/jar/Connection.java:
	Reorganized import statements. Fixed @author tags.

2005-04-20  Chris Burdess  <dog@gnu.org>

	* java/io/DataOutputStream.java (writeUTF): Use block write for
	output.

2005-04-20  Jeroen Frijters  <jeroen@frijters.net>

	* java/io/DataInputStream.java (ignoreInitialNewline): Removed
	(readLine): Changed newline handling.

2005-04-20  Jeroen Frijters  <jeroen@frijters.net>

	* java/awt/image/PixelGrabber.java (setPixels(int,int,int,int,
	ColorModel,byte[],int,int): Fixed byte to int conversion.

2005-04-20  Michael Koch  <konqueror@gmx.de>

	* java/io/FilePermission.java
	(serialVersionUID): Made private.
	(ALL_FILES): New constant.
	(implies): Handle '<<ALL FILES>>' case.

2005-04-20  Sven de Marothy  <sven@physto.se>

	* gnu/java/awt/peer/gtk/GdkGraphics.java:
	(drawImage): Don't notify the image observer for offscreen images.
	* gnu/java/awt/peer/gtk/GtkImagePainter.java:
	(setPixels): Don't notify the image observer.

2005-04-20  Sven de Marothy  <sven@physto.se>

	* java/nio/ByteBufferImpl.java:
	(putChar): Inlined for speed.
	(put, get): Bulk methods can use arraycopy.
	* java/nio/CharBufferImpl.java:
	(put, get): Bulk methods can use arraycopy.

2005-04-20  Jeroen Frijters  <jeroen@frijters.net>

	* java/nio/ByteBufferImpl.java (get(), put(byte)): Inlined checks
	and field updates.
	* java/nio/CharBufferImpl.java
	(CharBufferImpl(CharBufferImpl)): Copy array_offset field.
	(get(), put(char)): Inlined checks and field updates. Fixed to
	take array_offset into account.
	(get(int), put(int, char)): Fixed to take array_offset into account.

2005-04-20  Sven de Marothy  <sven@physto.se>

	* java/text/SimpleDateFormat.java:
	(formatWithAttribute): Pad year before truncating digits.

2005-04-20  Michael Koch  <konqueror@gmx.de>

	* gnu/java/net/PlainDatagramSocketImpl.java:
	Merged copyright header.
	* gnu/java/net/PlainSocketImpl.java:
	Reorganized import statements. Fixed @author tags.

2005-04-20  Michael Koch  <konqueror@gmx.de>

	* gnu/java/lang/ClassHelper.java,
	gnu/java/lang/reflect/TypeSignature.java:
	Fixed @author tag.

2005-04-20  Michael Koch  <konqueror@gmx.de>

	* gnu/java/beans/IntrospectionIncubator.java:
	Fixed HTML tags in javadocs.

2005-04-20  Jeroen Frijters  <jeroen@frijters.net>

	* gnu/java/beans/IntrospectionIncubator.java
	(addToPropertyHash, addToListenerHash): Don't confuse get(),
	set(), is(), add() and remove() with properties or events.

2005-04-20  Michael Koch  <konqueror@gmx.de>

	* gnu/java/awt/image/XBMDecoder.java:
	Fixed modifier order.

2005-04-20  Roman Kennke  <roman@kennke.org>

	* javax/swing/plaf/basic/BasicButtonUI.java
	(paint): This should not care about margin and insets
	at the same time, as insets already include the margin
	through the border.
	* javax/swing/plaf/basic/BasicGraphicsUtils.java
	(getPreferredButtonSize): Likewise.
	* javax/swing/plaf/metal/MetalBorders.java
	(getBorderInsets): Likewise.

2005-04-20  Roman Kennke  <roman@kennke.org>

	* javax/swing/plaf/basic/BasicOptionPaneUI.java
	(createMessageArea): The JPanel that holds the message area
	doesn't need to override getPreferredSize. This prevents some
	message components from rendering nicely.

2005-04-20  Roman Kennke  <roman@kennke.org>

	* javax/swing/plaf/metal/MetalInternalFrameUI.java
	(createUI): Do not share instances between components.
	* javax/swing/plaf/metal/MetalSliderUI.java
	(createUI): Do not share instances between components.

2005-04-20  Roman Kennke  <roman@kennke.org>

	* javax/swing/plaf/metal/MetalBorders:
	(PopupMenuBorder): Added.
	* javax/swing/plaf/metal/MetalLookAndFeel
	(initComponentDefaults): Added PopupMenuBorder.

2005-04-20  Roman Kennke  <roman@kennke.org>

	* javax/swing/tree/DefaultTreeSelectionModel.java:
	Added API documentation all over the class.

2005-04-20  Roman Kennke  <roman@kennke.org>

	* javax/swing/plaf/basic/BasicScrollPaneUI.java
	(installDefaults): Link managed JScrollPane in instance field.
	(uninstallDefaults): Unlink managed JScrollPane in instance field.

2005-04-20  Roman Kennke  <roman@kennke.org>

	* javax/swing/plaf/basic/BasicScrollBarUI.java
	(PropertyChangeHandler.propertyChange): Add default
	to switch statement to avoid errors with unusual values
	for orientation.
	(installComponents): Likewise.

2005-04-20  Roman Kennke  <roman@kennke.org>

	* javax/swing/plaf/metal/MetalScrollBarUI.java:
	(createUI): Instances cannot be shared among JScrollPanes.

2005-04-20  Roman Kennke  <roman@kennke.org>

	* javax/swing/plaf/metal/MetalLookAndFeel.java
	(initComponentDefaults): Added defaults for Menu, MenuBar
	MenuEntry fonts.

2005-04-20  Roman Kennke  <roman@kennke.org>

	* javax/swing/plaf/basic/BasicScrollBarUI.java
	(installUI): Install listeners after everything all, otherwise
	we get strange NPEs in some situations, especially with
	custom L&Fs.
	(createIncreaseButton): Orientation is expected to be
	SwingConstants.NORTH, ..SOUTH, ..WEST or ..EAST and not
	HORIZONTAL or VERTICAL.
	(createDecreaseButton): Orientation is expected to be
	SwingConstants.NORTH, ..SOUTH, ..WEST or ..EAST and not
	HORIZONTAL or VERTICAL.
	(installComponents): Orientation for buttons is expected to be
	SwingConstants.NORTH, ..SOUTH, ..WEST or ..EAST and not
	HORIZONTAL or VERTICAL.

2005-04-20  Roman Kennke  <roman@kennke.org>

	* javax/swing/JToolBar.java
	(addImpl): Adjust added AbstractButtons to look and feel like
	toolbar buttons.
	* javax/swing/plaf/metal/MetalBorders.java:
	Adjusted insets of ButtonBorder.
	(RolloverMarginBorder): Added class for toolbar buttons.
	(getButtonBorder): Adjusted factory method to return a shared
	instance of button border.
	(getToolbarButtonBorder): Added factory method to return a shared
	instance of toolbar button border.
	(getMarginBorder): Added factory method to return a shared
	instance of margin border.
	* javax/swing/plaf/metal/MetalButtonUI.java
	(installDefauls): If button is child of a JToolBar then set
	special border on this button.

2005-04-20  Michael Koch  <konqueror@gmx.de>

	* java/net/URLConnection.java
	(getContent): Fixed javadoc comment.

2005-04-20  Andrew John Hughes  <gnu_andrew@member.fsf.org>

	* java/net/URL.java:
	(toURI()): Implemented.

2005-04-19  Michael Koch  <konqueror@gmx.de>

	* java/net/InetAddress.java
	(InetAddress): Fixed javadoc comment.
	(aton): Likewise.
	(lookup): Added javadoc.
	(getFamily): Likewise.
	* java/net/ServerSocket.java
	(getChannel): Improved javadoc comment.

2005-04-19  Andrew John Hughes  <gnu_andrew@member.fsf.org>

	* gnu/xml/dom/html2/DomHTMLParser.java:
	Changed 'enum' references to become 'enumeration'.

2005-04-19  Audrius Meskauskas  <audriusa@bluewin.ch>

	* gnu/xml/dom/html2/DomHTMLParser.java: New file.

2005-04-19  Andrew John Hughes  <gnu_andrew@member.fsf.org>

	* gnu/javax/swing/text/html/parser/htmlAttributeSet.java:
	(getAttributeNames()): Replaced 'enum' with 'enumeration'.
	* gnu/javax/swing/text/html/parser/htmlValidator.java:
	(validateParameters(TagElement,htmlAttributeSet)):
	Replaced 'enum' with 'enumeration'.
	(validateAttribute(TagElement,htmlAttributeSet,Enumeration,Enumeration)):
	Likewise.

2005-04-19  Audrius Meskauskas  <audriusa@bluewin.ch>

	* javax/swing/text/html/parser/Entity.java (getType): New method.
	* javax/swing/text/html/parser/DocumentParser.java:
	Inherit from javax.swing.text.html.parser.Parser.

2005-04-19  Chris Burdess  <dog@gnu.org>

	* gnu/xml/dom/html2/DomHTMLDocument.java: Fixed element creation and
	check for HTML/XHTML namespace.

2005-04-19  Audrius Meskauskas  <audriusa@bluewin.ch>

	* javax/swing/text/html/parser/Parser.java,
	javax/swing/text/html/parser/Entity.java:
	Inheriting from DTDConstants.
	* javax/swing/text/html/parser/AttributeList.java
	(getValues): Changed return type.
	* javax/swing/text/html/parser/DocumentParser
	(parse): Adding the callback parameter that receives
	the parsing events.

2005-04-19  Chris Burdess  <dog@gnu.org>

	* gnu/xml/dom/DomImpl.java,
	gnu/xml/dom/html2/DomHTMLAnchorElement.java,
	gnu/xml/dom/html2/DomHTMLDocument.java,
	gnu/xml/dom/html2/DomHTMLElement.java,
	gnu/xml/dom/html2/DomHTMLFormElement.java,
	gnu/xml/dom/html2/DomHTMLFrameElement.java,
	gnu/xml/dom/html2/DomHTMLIFrameElement.java,
	gnu/xml/dom/html2/DomHTMLImpl.java,
	gnu/xml/dom/html2/DomHTMLInputElement.java,
	gnu/xml/dom/html2/DomHTMLObjectElement.java,
	gnu/xml/dom/html2/DomHTMLOptionElement.java,
	gnu/xml/dom/html2/DomHTMLSelectElement.java,
	gnu/xml/dom/html2/DomHTMLTableCellElement.java,
	gnu/xml/dom/html2/DomHTMLTableElement.java,
	gnu/xml/dom/html2/DomHTMLTableRowElement.java,
	gnu/xml/dom/html2/DomHTMLTableSectionElement.java,
	gnu/xml/dom/html2/DomHTMLTextAreaElement.java: JAXP integration,
	UI events, and tree utility functions.

2005-04-19  Michael Koch  <konqueror@gmx.de>

	* gnu/javax/swing/text/html/parser/HTML_401F.java,
	gnu/javax/swing/text/html/parser/gnuDTD.java,
	gnu/javax/swing/text/html/parser/models/node.java:
	Reworked import statements.

2005-04-19  Audrius Meskauskas, Lithuania  <AudriusA@Bioinformatics.org>

	* javax/swing/text/html/HTMLDocument.java: New file.

2005-04-19  Michael Koch  <konqueror@gmx.de>

	* javax/swing/text/html/HTMLFrameHyperlinkEvent.java:
	Reformatted.
	* javax/swing/text/html/parser/AttributeList.java:
	Fixed order of modifiers.
	(AttributeList): Made final.
	* javax/swing/text/html/parser/ContentModel.java:
	Fixed html characters in javadocs.
	* javax/swing/text/html/parser/DTD.java
	(DTD): Don't implement java.io.Serializable directly.
	(getElement): Simplified.
	* javax/swing/text/html/parser/DTDConstants.java:
	Reformatted file.
	* javax/swing/text/html/parser/Element.java:
	Fixed order of modifiers.
	* javax/swing/text/html/parser/Parser.java:
	Reformatted. Don't use fully-qualified class names.
	* javax/swing/text/html/parser/ParserDelegator.java:
	Fixed order of modifiers.
	* javax/swing/text/rtf/RTFParser.java:
	Re-ordered import statements.
	* javax/swing/text/rtf/RTFScanner.java:
	Removed unused import statement.

2005-04-19  Chris Burdess  <dog@gnu.org>

	* gnu/xml/dom/html2/DomHTMLButtonElement.java,
	gnu/xml/dom/html2/DomHTMLCollection.java,
	gnu/xml/dom/html2/DomHTMLDocument.java,
	gnu/xml/dom/html2/DomHTMLElement.java: Extensions for new element
	types.
	* gnu/xml/dom/html2/DomHTMLDListElement.java,
	gnu/xml/dom/html2/DomHTMLDirectoryElement.java,
	gnu/xml/dom/html2/DomHTMLDivElement.java,
	gnu/xml/dom/html2/DomHTMLFieldSetElement.java,
	gnu/xml/dom/html2/DomHTMLFontElement.java,
	gnu/xml/dom/html2/DomHTMLFormElement.java,
	gnu/xml/dom/html2/DomHTMLFrameElement.java,
	gnu/xml/dom/html2/DomHTMLFrameSetElement.java,
	gnu/xml/dom/html2/DomHTMLHRElement.java,
	gnu/xml/dom/html2/DomHTMLHeadElement.java,
	gnu/xml/dom/html2/DomHTMLHeadingElement.java,
	gnu/xml/dom/html2/DomHTMLHtmlElement.java,
	gnu/xml/dom/html2/DomHTMLIFrameElement.java,
	gnu/xml/dom/html2/DomHTMLImageElement.java,
	gnu/xml/dom/html2/DomHTMLInputElement.java,
	gnu/xml/dom/html2/DomHTMLIsIndexElement.java,
	gnu/xml/dom/html2/DomHTMLLIElement.java,
	gnu/xml/dom/html2/DomHTMLLabelElement.java,
	gnu/xml/dom/html2/DomHTMLLegendElement.java,
	gnu/xml/dom/html2/DomHTMLLinkElement.java,
	gnu/xml/dom/html2/DomHTMLMapElement.java,
	gnu/xml/dom/html2/DomHTMLMenuElement.java,
	gnu/xml/dom/html2/DomHTMLMetaElement.java,
	gnu/xml/dom/html2/DomHTMLModElement.java,
	gnu/xml/dom/html2/DomHTMLOListElement.java,
	gnu/xml/dom/html2/DomHTMLObjectElement.java,
	gnu/xml/dom/html2/DomHTMLOptGroupElement.java,
	gnu/xml/dom/html2/DomHTMLOptionElement.java,
	gnu/xml/dom/html2/DomHTMLParagraphElement.java,
	gnu/xml/dom/html2/DomHTMLParamElement.java,
	gnu/xml/dom/html2/DomHTMLPreElement.java,
	gnu/xml/dom/html2/DomHTMLQuoteElement.java,
	gnu/xml/dom/html2/DomHTMLScriptElement.java,
	gnu/xml/dom/html2/DomHTMLSelectElement.java,
	gnu/xml/dom/html2/DomHTMLStyleElement.java,
	gnu/xml/dom/html2/DomHTMLTableCaptionElement.java,
	gnu/xml/dom/html2/DomHTMLTableCellElement.java,
	gnu/xml/dom/html2/DomHTMLTableColElement.java,
	gnu/xml/dom/html2/DomHTMLTableElement.java,
	gnu/xml/dom/html2/DomHTMLTableRowElement.java,
	gnu/xml/dom/html2/DomHTMLTableSectionElement.java,
	gnu/xml/dom/html2/DomHTMLTextAreaElement.java,
	gnu/xml/dom/html2/DomHTMLTitleElement.java,
	gnu/xml/dom/html2/DomHTMLUListElement.java: New files.

2005-04-19  Audrius Meskauskas  <audriusa@bluewin.ch>

	* javax/swing/text/ChangedCharSetException.java,
	javax/swing/text/html/HTMLEditorKit.java,
	javax/swing/text/html/HTMLFrameHyperlinkEvent.java,
	javax/swing/text/html/parser/AttributeList.java,
	javax/swing/text/html/parser/ContentModel.java,
	javax/swing/text/html/parser/DocumentParser.java,
	javax/swing/text/html/parser/DTD.java,
	javax/swing/text/html/parser/DTDConstants.java,
	javax/swing/text/html/parser/Element.java,
	javax/swing/text/html/parser/Entity.java,
	javax/swing/text/html/parser/Parser.java,
	javax/swing/text/html/parser/TagElement.java,
	gnu/javax/swing/text/html/package.html,
	gnu/javax/swing/text/html/parser/gnuDTD.java,
	gnu/javax/swing/text/html/parser/HTML_401F.java,
	gnu/javax/swing/text/html/parser/htmlAttributeSet.java,
	gnu/javax/swing/text/html/parser/htmlValidator.java,
	gnu/javax/swing/text/html/parser/package.html,
	gnu/javax/swing/text/html/parser/models/list.java,
	gnu/javax/swing/text/html/parser/models/node.java,
	gnu/javax/swing/text/html/parser/models/noTagModel.java,
	gnu/javax/swing/text/html/parser/models/package.html,
	gnu/javax/swing/text/html/parser/models/PCDATAonly_model.java,
	gnu/javax/swing/text/html/parser/models/TableRowContentModel.java,
	gnu/javax/swing/text/html/parser/models/transformer.java,
	gnu/javax/swing/text/html/parser/support/gnuStringIntMapper.java,
	gnu/javax/swing/text/html/parser/support/package.html,
	gnu/javax/swing/text/html/parser/support/parameterDefaulter.java,
	gnu/javax/swing/text/html/parser/support/Parser.java,
	gnu/javax/swing/text/html/parser/support/textPreProcessor.java,
	gnu/javax/swing/text/html/parser/support/low/Buffer.java,
	gnu/javax/swing/text/html/parser/support/low/Constants.java,
	gnu/javax/swing/text/html/parser/support/low/Location.java,
	gnu/javax/swing/text/html/parser/support/low/node.java,
	gnu/javax/swing/text/html/parser/support/low/package.html,
	gnu/javax/swing/text/html/parser/support/low/ParseException.java,
	gnu/javax/swing/text/html/parser/support/low/pattern.java,
	gnu/javax/swing/text/html/parser/support/low/Queue.java,
	gnu/javax/swing/text/html/parser/support/low/ReaderTokenizer.java:
	New files.
	* javax/swing/text/html/HTML.java,
	javax/swing/text/html/parser/ParserDelegator.java:
	New files (replacing).
	* javax/swing/text/html/package.html,
	javax/swing/text/html/parser/package.html: Documenting the
	packages.

2005-04-19  Chris Burdess  <dog@gnu.org>

	* gnu/xml/dom/html2/DomHTMLAnchorElement.java,
	gnu/xml/dom/html2/DomHTMLAppletElement.java,
	gnu/xml/dom/html2/DomHTMLAreaElement.java,
	gnu/xml/dom/html2/DomHTMLBaseElement.java,
	gnu/xml/dom/html2/DomHTMLBaseFontElement.java,
	gnu/xml/dom/html2/DomHTMLBodyElement.java,
	gnu/xml/dom/html2/DomHTMLBRElement.java,
	gnu/xml/dom/html2/DomHTMLButtonElement.java,
	gnu/xml/dom/html2/DomHTMLCollection.java,
	gnu/xml/dom/html2/DomHTMLDocument.java,
	gnu/xml/dom/html2/DomHTMLElement.java: New files.

2005-04-19  Michael Koch  <konqueror@gmx.de>

	* Makefile.am: Added new files.
	* Makefile.in: Regenerated.

2005-04-19  Roman Kennke  <roman@kennke.org>

	* javax/swing/text/JTextComponent.java
	(JTextComponent): Added repaintListener which issues repaint
	requests when the underlying document changes.
	(setDocument): Adds repaintListener to document when the
	document is changed.
	* javax/swing/text/DefaultEditorKit.java:
	Removed repaint calls on JTextComponent. This is now handled
	through a DocumentListener in JTextComponent that repaints
	the component when needed.

2005-04-19  Roman Kennke  <roman@kennke.org>

	PR libgcj/21064
	* javax/swing/text/StyleContext.java
	(NamedStyle.setResolveParent): Added null
	pointer check.

2005-04-19  Michael Koch  <konqueror@gmx.de>

	* java/rmi/server/RemoteObject.java:
	Removed unused import statement.

2005-04-19  Michael Koch  <konqueror@gmx.de>

	* java/net/URL.java: Formatting cleanups.

2005-04-19  Michael Koch  <konqueror@gmx.de>

	* java/awt/FontMetrics.java: Reformatted.
	(getFontRenderContext): Handle case when java.awt.Graphics context is
	given.

2005-04-19  Michael Koch  <konqueror@gmx.de>

	* java/awt/FontMetrics.java
	(getStringBounds): New methods.


2005-04-19  Michael Koch  <konqueror@gmx.de>

	* gnu/java/security/x509/X509Certificate.java
	(parse): Handle val == null case.

2005-04-19  Roman Kennke  <roman@kennke.org>

	* javax/swing/plaf/metal/MetalLookAndFeel.java
	(initComponentDefaults): Added defaults for Menu, MenuBar
	MenuEntry fonts.

2005-04-19  Roman Kennke  <roman@kennke.org>

	* javax/swing/plaf/metal/MetalLookAndFeel.java
	(initComponentDefaults): Added Label.font.
	(initSystemColorDefaults): Added this method and adjusted the
	general control color.

2005-04-19  Roman Kennke  <roman@kennke.org>

	* javax/swing/plaf/metal/MetalBorders.java:
	Added.
	* javax/swing/plaf/metal/MetalButtonUI.java:
	(installDefaults): Install button font.
	* javax/swing/plaf/metal/MetalLookAndFeel.java:
	(initComponentDefaults): Added button border, font and margin.
	Changed components background color to the Metal current themes
	standard color.

2005-04-19  Roman Kennke  <roman@kennke.org>

	* javax/swing/plaf/metal/MetalLookAndFeel.java
	(initComponentDefaults): Added to set Metal specific component
	defaults.

2005-04-19  Mark Wielaard  <mark@klomp.org>

	* javax/swing/plaf/metal/MetalLookAndFeel.java
	(initClassDefaults): Call super.initClassDefaults().

2005-04-19  Roman Kennke  <roman@kennke.org>

	* javax/swing/plaf/metal/MetalLookAndFeel.java
	(initClassDefaults): Added to include the *UI classes.

2005-04-19  Roman Kennke  <roman@kennke.org>

	* javax/swing/plaf/metal/MetalComboBoxUI.java:
	Added.
	* javax/swing/plaf/metal/MetalDesktopIconUI.java:
	Added.
	* javax/swing/plaf/metal/MetalInternalFrameUI.java:
	Added.
	* javax/swing/plaf/metal/MetalPopupMenuSeparatorUI.java:
	Added.
	* javax/swing/plaf/metal/MetalProgressBarUI.java:
	Added.
	* javax/swing/plaf/metal/MetalRootPaneUI.java:
	Added.
	* javax/swing/plaf/metal/MetalScrollBarUI.java:
	Added.
	* javax/swing/plaf/metal/MetalSeparatorUI.java:
	Added.
	* javax/swing/plaf/metal/MetalSliderUI.java:
	Added.
	* javax/swing/plaf/metal/MetalSplitPaneUI.java:
	Added.
	* javax/swing/plaf/metal/MetalTextFieldUI.java:
	Added.
	* javax/swing/plaf/metal/MetalToggleButtonUI.java:

2005-04-19  Roman Kennke  <roman@kennke.org>

	* javax/swing/plaf/metal/MetalButtonUI.java:
	Added skeleton class.
	* javax/swing/plaf/metal/MetalCheckBoxUI.java:
	Added skeleton class.
	* javax/swing/plaf/metal/MetalLabelUI.java:
	Added skeleton class.
	* javax/swing/plaf/metal/MetalRadioButtonUI.java:
	Added skeleton class.
	* javax/swing/plaf/metal/MetalScrollPaneUI.java:
	Added skeleton class.
	* javax/swing/plaf/metal/MetalTabbedPaneUI.java:
	Added skeleton class.

2005-04-19  Roman Kennke  <roman@kennke.org>

	* javax/swing/UIDefaults.java:
	Added API documentation for all methods.

2005-04-19  Roman Kennke  <roman@kennke.org>

	* javax/swing/UIDefaults.java
	(put): Now uses new checkAndPut method instead of checking
	directly.
	(putDefaults): Fixed so that it accepts null-values and
	treats them like remove(key).
	(checkAndPut): Added. This checks for null-values and calls
	put or remove.

2005-04-19  Michael Koch  <konqueror@gmx.de>

	* Makefile.am: Added new files.
	* Makefile.in: Regenerated.

2005-04-19  Mark Wielaard  <mark@klomp.org>

	* java/lang/natRuntime.cc (insertSystemProperties): Set
	java.class.path to CLASSPATH only when not empty. Fall back to
	default path "." when java.class.path is empty.

2005-04-19  Michael Koch  <konqueror@gmx.de>

	* javax/swing/text/rtf/ControlWordToken.java,
	javax/swing/text/rtf/RTFEditorKit.java,
	javax/swing/text/rtf/RTFParseException.java,
	javax/swing/text/rtf/RTFParser.java,
	javax/swing/text/rtf/RTFScanner.java,
	javax/swing/text/rtf/TextToken.java,
	javax/swing/text/rtf/Token.java: New files.
	* Makefile.am: Added new files.
	* Makefile.in: Regenerated.

2005-04-19  Michael Koch  <konqueror@gmx.de>

	* java/awt/geom/QuadCurve2D.java:
	Fixed Brian Gough's name for real.

2005-04-19  Roman Kennke  <roman@kennke.org>

	* javax/swing/UIManager.java:
	Make the UIManager respect the swing.defaultlaf system
	property.

2005-04-19  Tom Tromey  <tromey@redhat.com>

	* java/lang/natVMClassLoader.cc (loadClass): Call resolveClass,
	not _Jv_InitClass.

2005-04-19  Roman Kennke  <roman@kennke.org>

	* javax/swing/plaf/basic/BasicMenuBarUI.java:
	Fixed tabs to spaces.

2005-04-19  Roman Kennke  <roman@kennke.org>

	* javax/swing/plaf/basic/BasicMenuUI.java
	(getMaximumSize): Now returns preferredSize because JMenu should
	never be bigger than that.
	* javax/swing/JRootPane
	(RootLayout.layoutContainer): Make JMenuBars take the whole width.

2005-04-19  Roman Kennke  <roman@kennke.org>

	* javax/swing/JRootPane.java:
	Fixed various tabs to be spaces.
	(RootLayout.layoutContainer): Made menubar left aligned.

2005-04-19  Roman Kennke  <roman@ontographics.com>

	* javax/swing/JList.java
	(getPreferredScrollableViewportSize):
	The previous implementation was merely guessing the size,
	now it respects layoutOrientation, visibleRowCount
	and preferredSize.
	(getScrollableTracksViewportHeight):
	Reimplemented so that layoutOrientation, visibleRowCount
	and preferred size are respected.
	(getScrollableTracksViewportWidth):
	Reimplemented so that layoutOrientation, visibleRowCount
	and preferred size are respected.
	* javax/swing/plaf/basic/BasicListUI.java
	(getPreferredSize):
	Improved calculation of preferredSize when JList is
	set to HORIZONTAL_WRAP or VERTICAL_WRAP.
	(getCellBounds):
	The previous implementation assumed a layoutOrientation of
	JList.VERTICAL, now also ok with JList.HORIZONTAL_WRAP and
	JList.VERTICAL_WRAP.

2005-04-19  Roman Kennke  <roman@ontographics.com>

	* javax/swing/plaf/basic/BasicListUI.java
	(paintCell): use CellRendererPane for painting the cells.

2005-04-19  Roman Kennke  <roman@ontographics.com>

	* javax/swing/plaf/basic/BasicListUI:
	fixed modifiers of several fields, methods and inner
	classes to match the 'spec'.
	(getMaximumSize): removed. It's not in the spec and the
	implementations was superfluous.

2005-04-19  Roman Kennke  <roman@ontographics.com>

	* javax/swing/plaf/basic/BasicListUI:
	make BasicListUI capable of wrapping lists
	(layoutOrientation property of javax.swing.JList)

2005-04-19  Roman Kennke  <roman@ontographics.com>

	* javax/swing/plaf/basic/BasicListUI
	(updateLayoutState,paint): make BasicListUI aware of the
	width of the rendered JList.

2005-04-19  Roman Kennke  <roman@kennke.org>

	* javax/swing/ImageIcon.java
	Added API documentation.

2005-04-19  Roman Kennke  <roman@kennke.org>

	* javax/swing/text/ImageIcon.java
	(ImageIcon): Use setImage instead of direct assignment.
	(setImage): Call loadImage to make sure that the image is loaded.
	(loadImage): Waits for the image to complete loading.
	(getImageLoadStatus): Added. Returns the load status of the
	image.

2005-04-19  Audrius Meskauskas  <audriusa@bluewin.ch>

	* javax/swing/JTextArea.java (replaceRange):
	Fixing doc.remove(start, length) misinterpretation.

2005-04-19  Roman Kennke  <roman@ontographics.com>

	* javax/swing/CellRendererPane.java:
	implemented all methods of this class.
	reformatted all wrong formatted code.

2005-04-19  Roman Kennke  <roman@kennke.org>

	* javax/swing/BoxLayout.java:
	(layoutContainer): Made this layout manager respect the
	minimum, maximum and preferred size more correctly.

2005-04-19  Roman Kennke  <roman@ontographics.com>

	* javax/swing/BoxLayout.java:
	(preferredLayoutSize,minimumLayoutSize,maximumLayoutSize,
	layoutContainer): Make these methods and thereby the
	BoxLayout respect the insets (like borders) of the
	component that is laid out.

2005-04-19  Roman Kennke  <roman@kennke.org>

	* javax/swing/JComponent.java:
	Modified alignmentX and alignmentY to be 0.5 instead of 0.0.
	Untabified the file.

2005-04-19  Audrius Meskauskas  <audriusa@bluewin.ch>

	* javax/swing/JComboBox.java (constructors): selecting the
	first item if the box was constructed from the provided
	non - empty array or vector.

2005-04-19  Michael Koch  <konqueror@gmx.de>

	* gnu/java/awt/peer/gtk/GdkGraphics.java
	(getClipBounds): Handle clip being null.
	(setClip): Likewise.
	* java/beans/beancontext/BeanContextSupport.java
	(add): Implemented.
	(addAll): Likewise.
	(clear): Likewise.
	(removeAll): Likewise.
	(retainAll): Likewise.

2005-04-19  Michael Koch  <konqueror@gmx.de>

	* java/beans/beancontext/BeanContextServicesSupport.java
	(BeanContextServicesSupport): Reimplemented.
	(addBeanContextServicesListener): Implemented.
	(initialize): Likewise.
	(removeBeanContextServicesListener): Likewise.
	* java/beans/beancontext/BeanContextSupport.java
	(add): Likewise.
	(addBeanContextMembershipListener): Likewise.
	(getLocale): Likewise.
	(initialize): Likewise.
	(iterator): Likewise.
	(remove): Likewise.
	(toArray): Likewise.

2005-04-19  Roman Kennke  <roman@kennke.org>

	* java/awt/MediaTracker.java:
	Reindented tabs to spaces.

2005-04-19  Roman Kennke  <roman@kennke.org>

	* java/awt/MediaTracker.java
	(MediaEntry.imageUpdate): Removed check for SOMEBITS, this
	confused the media tracker and lead to lockups. The LOADING
	bit is handled on other places.
	(addImage): Removed the 'start image tracking' stuff. This
	is not necessary and could confuse the media tracker.
	(checkAll): Improved the check for image status so that
	images that already complete images are detected. Also now
	are really all images checked and if necessary loaded. Before
	the method bailed out after the first incomplete image.
	(statusAll): Detect images that are complete after the
	call to Component.prepareImage(..).
	(checkID): The same as in checkAll.
	(statusID): The same as in statusAll.

2005-04-19  Roman Kennke  <roman@kennke.org>

	* java/awt/MediaTracker.java
	(addImage): Synchronized list access.
	(waitForAll): Fixed comparison of time (changed < to >).
	(waitForID): Fixed comparison of time (changed < to >).
	(removeImage): Synchronized list access.

2005-04-19  Roman Kennke  <roman@kennke.org>

	* java/awt/MediaTracker.java
	Added API documentation.

2005-04-19  Roman Kennke  <roman@kennke.org>

	* java/awt/MediaTracker.java
	(MediaEntry.imageUpdate): Fixed flags. The different flags
	must not be ORed together.
	(checkAll): Modified to handle different meaning of the flags.
	(waitForAll): Fixed so that it waits maximum the
	specified amount of milliseconds.
	(statusAll): Modified to handle different meaning of the flags.
	(waitForID): Fixed so that it waits maximum the
	specified amount of milliseconds.

2005-04-19  vid Gilbert <david.gilbert@object-refinery.com>

	* java/awt/Font.java (decode): Handle null argument and allow
	space as delimiter.

2005-04-19  Robert Schuster <thebohemian@gmx.net>

	* java/beans/EventHandler.java: Reworked documentation.
	(invoke): Fixed behavior to match spec.

2005-04-19  Michael Koch  <konqueror@gmx.de>

	* java/awt/print/PrinterJob.java
	(pageDialog): New method.
	(printDialog): Implemented.

2005-04-19  Michael Koch  <konqueror@gmx.de>

	* java/awt/image/ConvolveOp.java:
	Removed comment added by eclipse.

2005-04-19  Guilhem Lavaux  <guilhem@kaffe.org>

	* java/awt/image/IndexColorModel.java
	(getRGB): Check if pixel is negative.

2005-04-19  Michael Koch  <konqueror@gmx.de>

	* java/awt/image/RasterOp.java:
	Fixed wrong formatting.

2005-04-18  Roman Kennke  <roman@kennke.org>

	* java/awt/Compmonent.java
	(setComponentOrientation): Made this property firing a
	PropertyChangeEvent.

2005-04-18  Roman Kennke  <roman@kennke.org>

	* java/awt/BorderLayout.java
	(calcSize): Check for overflow when component sizes are added.

2005-04-18  Robert Schuster <thebohemian@gmx.net>

	* java/awt/AWTEvent.java (toString): Added case
	for source not being an AWT component.

2005-04-18  Chris Burdess  <dog@gnu.org>

	* gnu/java/net/BASE64.java: Truncate encoded byte array.

2005-04-18  Michael Koch  <konqueror@gmx.de>

	gnu/java/awt/EmbeddedWindowSupport.java,
	gnu/java/net/HeaderFieldHelper.java,
	gnu/java/net/URLParseError.java,
	gnu/java/net/protocol/file/Handler.java,
	gnu/java/net/protocol/jar/Handler.java:
	Fixed usage of @author tag.

2005-04-18  Michael Koch  <konqueror@gmx.de>

	* gnu/xml/aelfred2/XmlParser.java:
	Reverted my typo fix.

2005-04-18  Michael Koch  <konqueror@gmx.de>

	* java/awt/geom/CubicCurve2D.java,
	java/awt/geom/QuadCurve2D.java:
	Fixed mentioning of Brian Gouph.

2005-04-18  Michael Koch  <konqueror@gmx.de>

	* gnu/java/awt/Buffers.java,
	gnu/java/awt/image/ImageDecoder.java,
	gnu/java/awt/image/XBMDecoder.java,
	gnu/java/awt/peer/ClasspathFontPeer.java,
	gnu/java/net/CRLFInputStream.java,
	gnu/java/net/EmptyX509TrustManager.java,
	gnu/java/net/LineInputStream.java,
	gnu/java/net/protocol/ftp/ActiveModeDTP.java,
	gnu/java/net/protocol/ftp/BlockInputStream.java,
	gnu/java/net/protocol/ftp/CompressedInputStream.java,
	gnu/java/net/protocol/ftp/DTP.java,
	gnu/java/net/protocol/ftp/DTPInputStream.java,
	gnu/java/net/protocol/ftp/FTPConnection.java,
	gnu/java/net/protocol/ftp/FTPURLConnection.java,
	gnu/java/net/protocol/ftp/PassiveModeDTP.java,
	gnu/java/net/protocol/ftp/StreamInputStream.java,
	gnu/java/net/protocol/http/ChunkedInputStream.java,
	gnu/java/net/protocol/http/HTTPConnection.java,
	gnu/java/net/protocol/http/HTTPURLConnection.java,
	gnu/java/net/protocol/http/Headers.java,
	gnu/java/net/protocol/http/Request.java,
	gnu/java/nio/ChannelInputStream.java,
	gnu/java/nio/ChannelOutputStream.java,
	gnu/java/nio/InputStreamChannel.java,
	gnu/java/nio/OutputStreamChannel.java,
	gnu/java/nio/SelectorProviderImpl.java,
	gnu/java/rmi/RMIMarshalledObjectInputStream.java,
	gnu/java/rmi/RMIMarshalledObjectOutputStream.java,
	gnu/java/rmi/dgc/DGCImpl.java,
	gnu/java/rmi/registry/RegistryImpl.java,
	gnu/java/rmi/server/ProtocolConstants.java,
	gnu/java/rmi/server/RMIDefaultSocketFactory.java,
	gnu/java/rmi/server/RMIIncomingThread.java,
	gnu/java/rmi/server/RMIObjectInputStream.java,
	gnu/java/rmi/server/RMIObjectOutputStream.java,
	gnu/java/rmi/server/RMIVoidValue.java,
	gnu/java/rmi/server/UnicastConnectionManager.java,
	gnu/java/rmi/server/UnicastRef.java,
	gnu/java/rmi/server/UnicastRemoteCall.java,
	gnu/java/rmi/server/UnicastRemoteStub.java,
	gnu/java/rmi/server/UnicastServerRef.java,
	gnu/java/security/OID.java,
	gnu/java/security/der/DERReader.java,
	gnu/java/security/provider/CollectionCertStoreImpl.java,
	gnu/java/security/provider/DSAParameterGenerator.java,
	gnu/java/security/provider/DefaultPolicy.java,
	gnu/java/security/provider/EncodedKeyFactory.java,
	gnu/java/security/provider/GnuDHPublicKey.java,
	gnu/java/security/provider/GnuDSAPrivateKey.java,
	gnu/java/security/provider/GnuDSAPublicKey.java,
	gnu/java/security/provider/GnuRSAPrivateKey.java,
	gnu/java/security/provider/GnuRSAPublicKey.java,
	gnu/java/security/provider/PKIXCertPathValidatorImpl.java,
	gnu/java/security/provider/RSA.java,
	gnu/java/security/provider/SHA1PRNG.java,
	gnu/java/security/provider/SHA1withRSA.java,
	gnu/java/security/provider/X509CertificateFactory.java,
	gnu/java/security/x509/GnuPKIExtension.java,
	gnu/java/security/x509/X500DistinguishedName.java,
	gnu/java/security/x509/X509CRL.java,
	gnu/java/security/x509/X509CRLEntry.java,
	gnu/java/security/x509/X509CertPath.java,
	gnu/java/security/x509/X509CertSelectorImpl.java,
	gnu/java/security/x509/X509Certificate.java,
	gnu/java/security/x509/ext/AuthorityKeyIdentifier.java,
	gnu/java/security/x509/ext/BasicConstraints.java,
	gnu/java/security/x509/ext/CRLNumber.java,
	gnu/java/security/x509/ext/CertificatePolicies.java,
	gnu/java/security/x509/ext/ExtendedKeyUsage.java,
	gnu/java/security/x509/ext/Extension.java,
	gnu/java/security/x509/ext/GeneralNames.java,
	gnu/java/security/x509/ext/IssuerAlternativeNames.java,
	gnu/java/security/x509/ext/KeyUsage.java,
	gnu/java/security/x509/ext/PolicyConstraint.java,
	gnu/java/security/x509/ext/PolicyMappings.java,
	gnu/java/security/x509/ext/PrivateKeyUsagePeriod.java,
	gnu/java/security/x509/ext/ReasonCode.java,
	gnu/java/security/x509/ext/SubjectAlternativeNames.java,
	gnu/java/security/x509/ext/SubjectKeyIdentifier.java:
	Reorganized import statements.

2005-04-18  Michael Koch  <konqueror@gmx.de>

	* gnu/java/awt/color/CieXyzConverter.java,
	gnu/java/awt/color/ClutProfileConverter.java,
	gnu/java/awt/color/ColorLookUpTable.java,
	gnu/java/awt/color/ColorSpaceConverter.java,
	gnu/java/awt/color/GrayProfileConverter.java,
	gnu/java/awt/color/GrayScaleConverter.java,
	gnu/java/awt/color/LinearRGBConverter.java,
	gnu/java/awt/color/ProfileHeader.java,
	gnu/java/awt/color/PyccConverter.java,
	gnu/java/awt/color/RgbProfileConverter.java,
	gnu/java/awt/color/SrgbConverter.java,
	gnu/java/awt/color/TagEntry.java,
	gnu/java/awt/color/ToneReproductionCurve.java:
	Standardized file headers.

2005-04-16  Tom Tromey  <tromey@redhat.com>

	* gnu/xml/pipeline/ValidationConsumer.java (Recognizer): Make
	'ANY' package-private.

2005-04-15  Tom Tromey  <tromey@redhat.com>

	* Makefile.in: Rebuilt.
	* Makefile.am (libgij_la_LIBADD): Moved SAX and DOM...
	(libgcj0_convenience_la_LIBADD): ... here.

2005-04-14  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* gij.cc (version): Properly quote java version.
	(main): Fix typo in comment.

2005-04-13  Mark Wielaard  <mark@klomp.org>

	* java/lang/natRuntime.cc (insertSystemProperties): Set
	java.class.path to CLASSPATH if not already set.

2005-04-07  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* prims.cc (parse_verbose_args): Fix verbose argument parsing.

2005-04-12  Mike Stump  <mrs@apple.com>

	* configure: Regenerate.

2005-04-12  Aaron Luchko  <aluchko@redhat.com>

	PR libgcj/20958
	* gnu/gcj/runtime/PersistentByteMap.java (close): Throw IOException.
	* gnu/gcj/tools/gcj_dbtool/Main.java (addJar): Make 'length' an int.

2005-04-12  Aaron Luchko  <aluchko@redhat.com>

	PR libgcj/20975
	* scripts/TexinfoDoclet.java: Removed.
	* Makefile.am (texinfo): Removed.
	* Makefile.in: Regenerated.

2005-04-11  Michael Koch  <konqueror@gmx.de>

	* javax/imageio/ImageIO.java (ReaderFormatFilter.filter):
	Fixed wrong casting.

2005-04-06  Andrew Haley  <aph@redhat.com>

	* testsuite/libjava.lang/bytearray.java: New file.
	* testsuite/libjava.lang/bytearray.out: New file.
	* java/lang/ClassLoader.java (loadClassFromSig): Declare
	(loadClass): Use it.
	* java/lang/natClassLoader.cc (loadClassFromSig): New method.

2005-04-06  Mohan Embar  <gnustuff@thisiscool.com>

	* Makefile.am ($(db_name)): Add $(EXEEXT) suffix to
	gcj-dbtool dependency
	* Makefile.in: Regenerated

2005-04-06  Bryce McKinlay  <mckinlay@redhat.com>

	* java/util/logging/natLogger.cc (getCallerStackFrame): Don't crash on
	NULL klass and meth values from _Jv_StackTrace::GetCallerInfo().

2005-04-05  Andrew Haley  <aph@redhat.com>

	* gnu/gcj/tools/gcj_dbtool/Main.java (Fileset): New class.
	(Tokenizer): New class.
	(getFiles): New method.
	(main): Add "-" argument.
	Add "-0" argument.
	Read list of files from stdin when merging map databases.
	(usage):  Add "-" argument.
	Add "-0" argument.
	Minor corrections.

2005-04-05  Thomas Fitzsimmons  <fitzsim@redhat.com>

	PR libgcj/20750
	* Makefile.am (AM_CXXFLAGS): Define JAVA_HOME.
	* Makefile.in: Regenerate.
	* configure.ac: Add --with-java-home option.
	* configure: Regenerate.
	* external/Makefile.in: Regenerate.
	* external/sax/Makefile.in: Regenerate.
	* external/w3c_dom/Makefile.in: Regenerate.
	* gcj/Makefile.in: Regenerate.
	* include/Makefile.in: Regenerate.
	* testsuite/Makefile.in: Regenerate.
	* java/lang/natRuntime.cc (insertSystemProperties): Set java.home
	to JAVA_HOME macro.

2005-04-05  Tom Tromey  <tromey@redhat.com>

	* jni.cc (_Jv_JNI_GetAnyFieldID): Throw ClassNotFoundException.
	* java/lang/reflect/natMethod.cc (_Jv_GetTypesFromSignature):
	Rewrote to use _Jv_FindClassFromSignature.
	* verify.cc (resolve): throw NoClassDefFoundError.
	* link.cc (resolve_field): Throw NoClassDefFoundError.
	(find_field): Likewise.
	* prims.cc (_Jv_FindClassFromSignature): Removed recursion.
	Handle error cases.  Added 'endp' argument.
	* include/jvm.h (_Jv_FindClassFromSignature): Updated prototype.

2005-04-05  Tom Tromey  <tromey@redhat.com>

	* Makefile.in: Rebuilt.
	* Makefile.am (lib_gnu_java_awt_peer_gtk_la_SOURCES): Removed
	gtk_awt_peer_sources.
	(lib_gnu_java_awt_peer_gtk_la_LIBADD): Added gtk-awt-peer.lo.
	(lib_gnu_java_awt_peer_gtk_la_DEPENDENCIES): Likewise.
	($(gtk_awt_peer_sources:.java=.lo)): Removed.
	(gtk-awt-peer.lo): New target.

2005-04-04  Steve Pribyl <steve@netfuel.com>

	PR libgcj/20761
	* configure.ac: Fix fastjar definition for cross builds.
	* configure: Rebuilt.

2005-04-04  Tom Tromey  <tromey@redhat.com>

	* java/lang/ClassLoader.java (loadClass): Resolve class even if
	it was already found.

2005-04-04  Tom Tromey  <tromey@redhat.com>

	* java/net/URL.java (DEFAULT_SEARCH_PATH): Added
	org.metastatic.jessie.

2005-04-02  Anthony Green  <green@redhat.com>

	PR libgcj/20727
	* java/nio/DirectByteBufferImpl.java: Fix buffer ownership bug.

2005-04-02  Mark Wielaard  <mark@klomp.org>

	* javax/naming/directory/BasicAttributes.java (equals): Compare to any
	Attributes and attribute order doesn't matter.
	(BasicAttributesEnumeration.where): Initialize to zero.
	(BasicAttributesEnumeration.nextElement): Update and compare where
	appropriately (zero based).

2005-04-01  Thomas Fitzsimmons  <fitzsim@redhat.com>

	PR libgcj/20090, PR libgcj/20526
	* gij.cc (nonstandard_opts_help): New function.
	(add_option): New function.
	(main): Support java options.  Set java.class.path.  Don't set
	_Jv_Jar_Class_Path.
	* prims.cc (parse_x_arg): New function.
	(parse_init_args): Call parse_x_arg for -X and _ options, when
	ignoreUnrecognized is true.
	(new _Jv_RunMain): New vm_args variant.
	(old _Jv_RunMain): Call new vm_args _Jv_RunMain.
	(_Jv_Jar_Class_Path): Remove variable.
	* include/java-props.h: Likewise.
	* include/cni.h (JvRealloc): New function.
	* include/jvm.h (_Jv_RunMain): Declare vm_args variant.
	* java/lang/natRuntime.cc (insertSystemProperties): Remove
	_Jv_Jar_Class_Path logic.  Use JV_VERSION and JV_API_VERSION
	macros.
	* configure.ac (JV_VERSION): Define.
	(JV_API_VERSION): Likewise.
	* configure: Regenerate.
	* include/config.h.in: Regenerate.

2005-04-01 Mark Anderson <mark@panonet.net>

	* java/lang/natDouble.cc (parseDouble): Handle NaN, Infinity and
	-Infinity as parameters.

2005-04-01  Michael Koch  <konqueror@gmx.de>

	* java/io/PipedInputStream.java
	(read): Make sure a positive byte value is returned. Revised javadoc.
	Thanks to Olafur Bragason for reporting these bugs.

2005-04-01  Tom Tromey  <tromey@redhat.com>

	* java/lang/natVMClassLoader.cc (getSystemClassLoaderInternal):
	Updated for name change.
	(nativeFindClass): New method.
	(loadClass): Use nativeFindClass.
	* java/lang/natClassLoader.cc (_Jv_FindClass): Use single-argument
	form of loadClass.
	* java/lang/VMClassLoader.java (tried_libraries, lib_control,
	LIB_FULL, LIB_CACHE, LIB_NEVER): New fields from old
	VMClassLoader.
	(initialize): New method.
	(nativeFindClass): Declare.
	* gnu/gcj/runtime/natVMClassLoader.cc: Removed.
	* gnu/gcj/runtime/VMClassLoader.java: Removed.
	* gnu/gcj/runtime/ExtensionClassLoader.java: Renamed from
	VMClassLoader.java.
	(definePackageForNative): Removed.
	(tried_libraries, LIB_CACHE, LIB_FULL, LIB_NEVER, lib_control):
	Moved to VMClassLoader.java.
	* prims.cc (_Jv_CreateJavaVM): Updated for renaming.
	* Makefile.am (gnu/gcj/runtime/ExtensionClassLoader.h): Renamed.
	(ordinary_java_source_files): Added ExtensionClassLoader.java,
	removed VMClassLoader.java.
	(nat_source_files): Removed natVMClassLoader.cc.

2005-04-01  Tom Tromey  <tromey@redhat.com>

	* Makefile.in: Rebuilt.
	* Makefile.am (db_pathtail): Use $(gcc_version), not
	@gcc_version@.

2005-04-01  Jeroen Frijters  <jeroen@frijters.net>

	* java/util/Timer.java
	(run): Stop the queue if a task throws an exception.

2005-03-31  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* javax/swing/text/JTextComponent.java (viewToModel): New method.

2005-03-29  Ian Lance Taylor  <ian@airs.com>

	* external/sax/Makefile.am (GCJ_WITH_FLAGS): Add "-fclasspath=".
	* external/sax/Makefile.in: Rebuild.
	* external/w3c_dom/Makefile.am (GCJ_WITH_FLAGS): Add
	"-fclasspath=".
	* external/w3c_dom/Makefile.in: Rebuild.

2005-03-29  Tom Tromey  <tromey@redhat.com>

	* java/lang/natRuntime.cc (insertSystemProperties): Set
	gnu.gcj.runtime.endorsed.dirs.
	* Makefile.in: Rebuilt.
	* Makefile.am (ordinary_java_source_files): Added
	HelperClassLoader.java.
	(AM_CXXFLAGS): Define GCJ_ENDORSED_DIRS.
	* gnu/gcj/runtime/VMClassLoader.java (VMClassLoader): Extends
	HelperClassLoader.
	(init): Use addDirectoriesFromProperty.
	* gnu/gcj/runtime/BootClassLoader.java (BootClassLoader): Extends
	HelperClassLoader.  Use addDirectoriesFromProperty.  Handle
	gnu.gcj.runtime.endorsed.dirs.
	* gnu/gcj/runtime/HelperClassLoader.java: New file.

2005-03-26  Chris Burdess  <dog@gnu.org>

	* gnu/xml/dom/DomNode.java (notifyNode): grow listener array as
	required.

2005-03-13  Michael Koch  <konqueror@gmx.de>

	* gnu/xml/aelfred2/XmlParser.java: Fixed typo.

2005-03-11  Chris Burdess  <dog@gnu.org>

	* gnu/xml/aelfred2/SAXDriver.java: Corrected bug handling URI
	warnings.

2005-02-27  Chris Burdess  <dog@gnu.org>

	* gnu/xml/aelfred2/JAXPFactory.java,
	gnu/xml/aelfred2/SAXDriver.java,
	gnu/xml/aelfred2/XmlParser.java,
	gnu/xml/aelfred2/XmlReader.java: Applied GNU Classpath source code
	formatting conventions. Replaced arrays of Object with struct-like
	classes for easier maintainability. Made SAXDriver.stringInterning
	package private to allow access from XmlParser inside the loop without
	a method call overhead.

2005-03-11  Chris Burdess  <dog@gnu.org>

	* gnu/xml/aelfred2/SAXDriver.java: Corrected bug handling URI
	warnings.

2005-03-28  Alexandre Oliva  <aoliva@redhat.com>

	* configure.ac: Revert 2005-03-25's patch.  Propagate MULTIlib
	settings to sub Makefiles.
	(GCJH, ZIP): Prefix with top_builddir.
	* configure: Rebuild.
	* external/w3c_dom/Makefile.am (MULTIBUILDTOP): Don't override.
	* external/w3c_dom/Makefile.in: Rebuild.
	* external/sax/Makefile.am (MULTIBUILDTOP): Don't override.
	* external/sax/Makefile.in: Rebuild.

2005-03-28  Eric Botcazou  <ebotcazou@libertysurf.fr>

	* testsuite/libjava.jni/jni.exp (gcj_jni_invocation_test_one): Add
	libsocket to the libraries to link for Solaris.

2005-03-28  Per Bothner  <per@bothner.com>

	* boehm.cc (_Jv_MarkObj): Don't follow null pointer to static field,
	which can happen if class is JV_STATE_LOADED but not JV_STATE_PREPARED.

2005-03-27  Andreas Tobler  <a.tobler@schweiz.ch>

	* Makefile.am (classes.stamp): Add gnu/gcj/tools/gcj_dbtool/Main.java
	to fix a ONESTEP fallout.
	* Makefile.in: Regenerate.

2005-03-25  Mike Stump  <mrs@apple.com>

	* configure.ac: Fix ZIP and GCJH at configure time to absolute
	paths like we do for the compiler, as we use it in external/sax
	and it doesn't get MULTIBUILDTOP right when multilibing.

2005-03-24  Anthony Green  <green@redhat.com>

	* gnu/gcj/tools/gcj_dbtool/Main.java: Accept libdir argument with
	-p option.
	(usage): Add [LIBDIR] to help output.
	* gnu/gcj/tools/gcj_dbtool/natMain.cc: New file.
	* Makefile.am (AM_CXXFLAGS): Define
	LIBGCJ_DEFAULT_DATABASE_PATH_TAIL.
	(db_pathtail): New macro.

2005-03-24  Tom Tromey  <tromey@redhat.com>

	* gnu/gcj/runtime/BootClassLoader.java (BootClassLoader): Don't
	add sax and w3c libraries.
	* Makefile.am (libgij_la_LIBADD): Added libsax-gcj.la and
	libw3c-gcj.la.
	* external/w3c_dom/Makefile.in: Rebuilt.
	* external/w3c_dom/Makefile.am (libw3c_gcj_la_GCJFLAGS): Include
	AM_GCJFLAGS.
	(libw3c_gcj_la_LDFLAGS): New variable.
	(noinst_LTLIBRARIES): Renamed.
	* external/sax/Makefile.in: Rebuilt.
	* external/sax/Makefile.am (libsax_gcj_la_GCJFLAGS): Include
	AM_GCJFLAGS.
	(libsax_gcj_la_LDFLAGS): New variable.
	(noinst_LTLIBRARIES): Renamed.

2005-03-23  Tom Tromey  <tromey@redhat.com>

	* Makefile.in: Rebuilt.
	* Makefile.am (AM_CXXFLAGS): Define TOOLEXECLIBDIR.
	(libgcj0_convenience_la_SOURCES): Don't include
	gnu_xml_source_files.
	(libgcj0_convenience_la_LIBADD): New variable.
	(libgcj_la_LIBADD): Don't include sax or w3c_dom.
	(all_java_source_files): javax_imageio_source_files,
	javax_xml_source_files, and gnu_java_beans_source_files.
	($(gnu_xml_source_files:.java=.lo)): Removed target.
	(gnu-xml.lo): New target.
	(javax-imageio.lo): Likewise.
	(javax-xml.lo): Likewise.
	(gnu-java-beans.lo): Likewise.
	(gnu_java_beans_source_files): New variable.
	(javax_imageio_source_files): Likewise.
	(javax_xml_source_files): Likewise.
	(javax_source_files): Moved files to other variable.
	(awt_java_source_files): Likewise.
	(ordinary_java_source_files): Added BootClassLoader.java.
	* java/lang/natVMClassLoader.cc (defineClass): Use boot loader,
	not system class loader.
	(initBootLoader): New method.
	(loadClass): Search bootLoader.
	* java/lang/natClassLoader.cc (_Jv_RegisterInitiatingLoader): Use
	boot loader, not system class loader.
	(_Jv_UnregisterInitiatingLoader): Likewise.
	(_Jv_FindClass): Likewise.  Ensure entries in
	bootstrap_class_list are unique.
	* java/lang/natClass.cc (getClassLoader): Don't special case
	system class loader.
	* java/lang/VMClassLoader.java (bootLoader): New field.
	(getResource): Use bootLoader.
	(getResources): Likewise.
	(initBootLoader): Declare.
	* gnu/gcj/runtime/BootClassLoader.java: New file.
	* external/sax/org/xml/sax/helpers/NamespaceSupport.java
	(EMPTY_ENUMERATION): Now package-private.
	* external/w3c_com/Makefile.in: Rebuilt.
	* external/w3c_com/Makefile.am (MULTIBUILDTOP): New variable.
	(w3c.jar): New target.
	(classes.stamp): Updated.
	(toolexeclib_LTLIBRARIES): Renamed from noinst_LTLIBRARIES.
	Changed name of library.
	(libw3c_gcj_la_SOURCES): New variable.
	(libw3c_gcj_la_GCJFLAGS): Likewise.
	(source_files): Renamed from lib3c_convenience_la_SOURCES.
	* external/sax/Makefile.in: Rebuilt.
	* external/sax/Makefile.am (MULTIBUILDTOP): New variable.
	(sax.jar): New target.
	(classes.stamp): Updated.
	(toolexeclib_LTLIBRARIES): Renamed from noinst_LTLIBRARIES.
	Changed name of library.
	(libsax_gcj_la_SOURCES): New variable.
	(libsax_gcj_la_GCJFLAGS): Likewise.
	(source_files): Renamed from libsax_convenience_la_SOURCES.
	* stacktrace.cc (non_system_trace_fn): Don't look at system class
	loader.
	* prims.cc (_Jv_CreateJavaVM): Initialize the bootstrap class
	loader.
	(_Jv_RunMain): Handle case where 'runtime' is NULL at exit.

2005-03-23  Sven de Marothy  <sven@physto.se>

	PR libgcj/2641, PR libgcj/9854, PR libgcj/14892, PR libgcj/18083,
	PR libgcj/11085:
	* java/util/Calendar.java
	(set): Use starting day of week when one is needed if none is given.
	* java/text/SimpleDateFormat.java
	(parse): Handle 1-12 and 1-24 timestamps correctly.
	* java/util/GregorianCalendar.java
	(computeTime, computeFields): HOUR should be in 0-11 format.
	(nonLeniencyCheck): Adjust leniency checking to that fact.
	(getLinearDay): Should be private.

2005-03-23  Tom Tromey  <tromey@redhat.com>

	* include/jvm.h (GCJ_40_BC_ABI_VERSION): New define.
	(_Jv_CheckABIVersion): Use it.

2005-03-22  Mike Stump  <mrs@apple.com>

	* stacktrace.cc: Delete unused _Jv_FindCallingClassState.

	* include/posix.h: .dylib is used on all Apple MACH platforms.
	* java/lang/ieeefp.h: ppc64 is also __IEEE_BIG_ENDIAN.

2005-03-22  Tom Tromey  <tromey@redhat.com>

	* gnu/gcj/tools/gcj_dbtool/Main.java (usage): Fixed output.

2005-03-21  Tom Tromey  <tromey@redhat.com>

	* java/lang/VMCompiler.java (static block): Also catch
	BufferUnderflowException.

2005-03-21  Zack Weinberg  <zack@codesourcery.com>

	* configure.ac: Do not invoke TL_AC_GCC_VERSION.  Do not
	set tool_include_dir.  In all substitutions, leave $(gcc_version)
	to be expanded by the Makefile.
	* aclocal.m4, configure: Regenerate.
	* Makefile.am: Set gcc_version.  Replace all uses of
	@gcc_version@ with $(gcc_version).
	* external/Makefile.am, external/sax/Makefile.am
	* external/w3c_dom/Makefile.am, gcj/Makefile.am
	* testsuite/Makefile.am: Set gcc_version.
	* include/Makefile.am: Set gcc_version and tool_include_dir.
	* Makefile.in, external/Makefile.in, external/sax/Makefile.in
	* external/w3c_dom/Makefile.in, gcj/Makefile.in, include/Makefile.in
	* testsuite/Makefile.in: Regenerate.

2005-03-17  Andrew Haley  <aph@redhat.com>

	* java/lang/natVMSecurityManager.cc (getClassContext): Add new
	arg: klass.
	Pass klass to _Jv_StackTrace::GetClassContext().
	* java/lang/ClassLoader.java (getParent): Pass class to
	VMSecurityManager.getClassContext()
	(getSystemClassLoader): Likewise.
	* java/lang/Package.java (getPackage): Likewise.
	(getPackages): Likewise.
	* java/lang/SecurityManager.java (getClassContext): Likewise.
	(currentClassLoader): Likewise.
	* java/lang/VMSecurityManager.java: (getClassContext): Likewise.
	(currentClassLoader) Add new arg: caller.
	Pass caller to VMSecurityManager.getClassContext.

	* stacktrace.cc (GetClassContext): Correct calculation of
	jframe_count.

	* boehm.cc (_Jv_MarkObj): (_Jv_MarkObj): Mark
	im->source_file_name.

2005-03-16  Andrew Haley  <aph@redhat.com>

	* boehm.cc (_Jv_MarkObj): Mark the interpreted method line_table.

2005-03-16  Tom Tromey  <tromey@redhat.com>

	* link.cc (ensure_class_linked): Removed #ifdef.
	(print_class_loaded): Likewise.
	(wait_for_state): Likewise.
	* java/lang/Class.h (_Jv_IsInterpretedClass): Always declare.
	* include/jvm.h (_Jv_IsInterpretedClass): Moved from...
	* include/java-interp.h: ... here.

2005-03-16  Tom Tromey  <tromey@redhat.com>

	* gnu/java/lang/MainThread.java (run): Load main class using
	system class loader.

2005-03-16  Andreas Tobler  <a.tobler@schweiz.ch>

	* testsuite/libjava.jni/jni.exp (gcj_jni_invocation_test_one): Add
	lgcc_s to the libraries to link for Darwin.

2005-03-15  Andreas Tobler  <a.tobler@schweiz.ch>

	* stacktrace.cc (_Jv_StackTrace::UnwindTraceFn): Protect
	interpreter-specific code with #ifdef INTERPRETER.
	(_Jv_StackTrace::getLineNumberForFrame): Likewise.
	(_Jv_StackTrace::FillInFrameInfo): Likewise.
	(_Jv_StackTrace::non_system_trace_fn): Likewise.
	* include/java-stack.h (struct _Jv_InterpFrameInfo): Protect with
	#ifdef INTERPRETER. Also protect declarations that use it.
	* java/lang/Class.h: Move _Jv_StackTrace friend declaration outside
	#ifdef INTERPRETER block.

2005-03-15  Jakub Jelinek  <jakub@redhat.com>

	PR libgcj/20251
	* Makefile.am (libjawt_la_LIBADD): Add -L$(here)/.libs.
	* Makefile.in: Rebuilt.

2005-03-15  David Daney  <ddaney@avtrex.com>

	* gnu/java/net/natPlainSocketImplPosix.cc (read_helper): Handle
	count == 0 case.

2005-03-15  David Daney  <ddaney@avtrex.com>

	* java/io/BufferedInputStream.java (available): Use 'in' instead
	of 'super' for underlying stream access.
	(close): Ditto.
	(read(byte[], int, int)): Ditto.
	(refill): Ditto.
	(skip): Call skip on underlying stream when possible.

2005-03-12  Andreas Tobler  <a.tobler@schweiz.ch>

	* stacktrace.cc (GetCallerInfo): Return nothing in case of
	SJLJ_EXCEPTIONS is defined.

2005-03-12  Ranjit Mathew  <rmathew@hotmail.com>

	* testsuite/libjava.jacks/jacks.xfail: Add XFAILs for new JSR-201
	tests.

2005-03-11  Andreas Tobler  <a.tobler@schweiz.ch>

	* testsuite/lib/libjava.exp (libjava_init): Use the same target
	check for Darwin.
	(libjava_arguments): Likewise.

	* testsuite/libjava.jni/jni.exp (gcj_jni_compile_c_to_so): Likewise.
	(gcj_jni_test_one): Likewise.
	(gcj_jni_invocation_compile_c_to_binary): Likewise.
	Add flags to keep the Darwin linker quiet.
	(gcj_jni_invocation_test_one): Use the same target check for Darwin.
	Add -liconv for Darwin.

2005-03-11  Tom Tromey  <tromey@redhat.com>

	* include/jvm.h (GCJ_40_BC_ABI_VERSION): New define.
	(_Jv_CheckABIVersion): Use it.

2005-03-11  Tom Tromey  <tromey@redhat.com>

	* gnu/gcj/tools/gcj_dbtool/Main.java (main): Handle '-p'.
	(usage): Document '-p'.
	* Makefile.in: Rebuilt.
	* Makefile.am (dbexecdir): New variable.
	(db_name): Likewise.
	(dbexec_DATA): Likewise.
	($(db_name)): New target.
	(AM_CXXFLAGS): Define LIBGCJ_DEFAULT_DATABASE.
	* java/lang/natRuntime.cc (insertSystemProperties): Set default
	system database.

2005-03-10  Bryce McKinlay  <mckinlay@redhat.com>

	* exception.cc: Remove stray MethodRef.h include.
	* java/lang/natClass.cc: Likewise.
	* gnu/gcj/runtime/MethodRef.java: Removed.
	* gnu/gcj/runtime/StackTrace.java, gnu/gcj/runtime/natNameFinder.cc,
	gnu/gcj/runtime/natStackTrace.cc: Really removed.
	* java/lang/natRuntime.cc (_load): Remove unsed variable.
	* Makefile.am (ordinary_java_source_files): Remove MethodRef.java.
	* Makefile.in: Rebuilt.

2005-03-10  Tom Tromey  <tromey@redhat.com>

	* Makefile.in: Rebuilt.
	* Makefile.am (ordinary_java_source_files): Added MethodRef.java.

2005-03-10  Chris Burdess  <dog@bluezoo.org>

	* gnu/xml/dom/ls/SAXEventSink.java: Ignore element declarations if
	not currently parsing the DTD.

2005-03-10  Bryce McKinlay  <mckinlay@redhat.com>

	New Stack Trace infrastructure.
	* Makefile.am (libgcj0_convenience_la_SOURCES): Add stacktrace.cc.
	(gnu/gcj/runtime/StackTrace.java): Removed.
	(ordinary_java_source_files): Remove obsolete files.
	(nat_source_files): Remove obsolete files. Add natVMThrowable.cc.
	* configure.host (fallback_backtrace_h): Set backtrace header
	for mingw and cygwin targets.
	* configure.ac: Make symlink for fallback backtrace headers.
	* Makefile.in, configure: Rebuilt.
	* defineclass.cc (_Jv_ClassReader::read_one_code_attribute):
	Read 'LineNumberTable' attribute.
	(_Jv_ClassReader::read_one_class_attribute): Read 'SourceFile'
	attribute.
	(_Jv_ClassReader::handleCodeAttribute): Initialize method line
	table fields.
	* exception.cc: Remove unused include.
	* interpret.cc (DIRECT_THREADED, insn_slot): Moved to java-interp.h.
	(SAVE_PC): New macro. Save current PC in the interpreter frame.
	(NULLCHECK, NULLARRAYCHECK): Use SAVE_PC.
	(_Jv_InterpMethod::compile): Translate bytecode PC values in the line
	table to direct threaded instruction values.
	(_Jv_StartOfInterpreter, _Jv_EndOfInterpreter): Removed.
	(_Jv_InterpMethod::run): No longer member function. All
	callers updated. Remove _Unwind calls. Call SAVE_PC whenever a call
	is made or where an instruction could throw.
	(_Jv_InterpMethod::get_source_line): New. Look up source line numbers
	in line_table.
	* prims.cc (catch_segv): Construct exception after MAKE_THROW_FRAME.
	(catch_fpe): Likewise.
	* stacktrace.cc: New file. Stack trace code now here.
	* gnu/gcj/runtime/MethodRef.java:
	* gnu/gcj/runtime/NameFinder.java: Mostly reimplemented. Now simply
	calls addr2line to look up PC addresses in a given binary or shared
	library.
	* gnu/gcj/runtime/StackTrace.java, gnu/gcj/runtime/natNameFinder.cc,
	gnu/gcj/runtime/natStackTrace.cc: Removed.
	* gnu/java/lang/MainThread.java (call_main): Add comment warning that
	this function name is specially recognised by the stack trace code
	and shouldn't be changed.
	* include/java-interp.h (DIRECT_THREADED, insn_slot): Moved here.
	(struct  _Jv_LineTableEntry, line_table, line_table_len): New.
	(_Jv_InterpMethod::run): Update declaration.
	(_Jv_StackTrace_): New friend. NameFinder and StackTrace no longer
	friends.
	(_Jv_InterpFrame): Renamed from _Jv_MethodChain. Add PC field.
	* include/java-stack.h: New file. Declarations for stack tracing.
	* include/jvm.h (_Jv_Frame_info): Removed.
	* java/lang/Class.h: Update friend declarations.
	* java/lang/VMClassLoader.java (getSystemClassLoader): Simplify
	exception message.
	* java/lang/VMThrowable.java (fillInStackTrace): Now native.
	(getStackTrace): Now native.
	(data): New RawDataManaged field.
	* java/lang/natClass.cc: Update includes.
	(forName): Use _Jv_StackTrace::GetCallingClass for
	calling-classloader check.
	(getClassLoader): Likewise.
	* java/lang/natRuntime.cc: Update includes.
	(_load): Use _Jv_StackTrace::GetFirstNonSystemClassLoader.
	* java/lang/natVMSecurityManager.cc: Update includes.
	(getClassContext): Use _Jv_StackTrace::GetClassContext.
	* java/lang/natVMThrowable.cc: New file. Native methods for
	VMThrowable.
	* java/lang/reflect/natArray.cc: Update includes.
	(newInstance): Use _Jv_StackTrace::GetCallingClass to implement
	accessibility check.
	* java/lang/reflect/natConstructor.cc: Update includes.
	(newInstance): Use _Jv_StackTrace::GetCallingClass to implement
	accessibility check.
	* java/lang/reflect/natField.cc: Update includes.
	(getAddr): Use _Jv_StackTrace::GetCallingClass to implement
	accessibility check.
	* java/lang/reflect/natMethod.cc: Update includes.
	(invoke): Use _Jv_StackTrace::GetCallingClass to implement
	accessibility check.
	* java/util/natResourceBundle.cc: Update includes.
	(getCallingClassLoader): Use _Jv_StackTrace::GetCallingClass.
	* java/util/logging/natLogger.cc: Update includes. Use
	_Jv_StackTrace::GetCallerInfo to get call-site info.
	* sysdep/generic/backtrace.h: Fallback backtrace code. Stub
	implementation.
	* sysdep/i386/backtrace.h: New. Fallback backtrace code. i386
	implementation.

2005-03-10  Ranjit Mathew  <rmathew@hotmail.com>

	* testsuite/libjava.compile/PR20312.java: New file.
	* testsuite/libjava.compile/PR20312.xfail: Likewise.
	* testsuite/libjava.jacks/jacks.xfail: Remove 9.2-implicit-15.

2005-03-09  Andrew Haley  <aph@redhat.com>

	* gnu/java/nio/channels/FileChannelImpl.java (smallTransferFrom):
	New.
	(smallTransferTo): New.
	(transferFrom): Loop around smallTransferFrom, copying pageSize
	bytes each time.
	(transferTo): Likewise.

2005-03-09  David Daney  <ddaney@avtrex.com>

	PR libgcj/20389
	Merge BufferedInputStream from GNU Classpath.
	* java/io/BufferedInputStream.java (marktarget): Field removed.
	(CHUNKSIZE): Field removed.
	(bufferSize): New field.
	(BufferedInputStream): Initialize fields.
	(close): Invalidate mark and buffer indexes.
	(mark):  Rewritten.
	(read()): Move mark handling code to refill.
	(read(byte[], int, int)): Ditto.
	(skip): Ditto and simplify EOF testing.
	(refill): Rewritten.
	* java/io/InputStreamReader.java (refill): Removed mark and reset
	of internal BufferedInputStream.

2005-03-09  Tom Tromey  <tromey@redhat.com>

	* java/lang/natVMClassLoader.cc (defineClass): Reference
	'systemClassLoader' field directly.
	* java/lang/natRuntime.cc (_load): Reference 'systemClassLoader'
	field directly.
	* java/lang/natClassLoader.cc (_Jv_RegisterInitiatingLoader):
	Reference 'systemClassLoader' field directly.
	(_Jv_UnregisterInitiatingLoader): Likewise.
	(_Jv_FindClass): Likewise.

2005-03-09  Andreas Tobler  <a.tobler@schweiz.ch>

	* java/lang/fdlibm.h: Merge an AIX define from GNU Classpath.

	* java/lang/mprec.h: Remove commented headers. Fix comment to match
	the file in GNU Classpath style.

2005-03-09  Tom Tromey  <tromey@redhat.com>

	* java/net/URLClassLoader.java (addURLImpl): Reset 'thisString'.
	(toString): Synchronize.

2005-03-08  Bryce McKinlay  <mckinlay@redhat.com>

	* testsuite/libjava.lang/pr13107_2.xfail: Remove xfail.
	* testsuite/libjava.lang/pr13107_3.xfail: Likewise.

2005-03-07  Tom Tromey  <tromey@redhat.com>

	* gnu/gcj/tools/gcj_dbtool/Main.java (main): Recognize '-f'.
	(usage): Document '-f'.

2005-03-07  Tom Tromey  <tromey@redhat.com>

	* java/lang/VMCompiler.java (md5Digest): New field.
	(compileClass): Clone md5Digest instead of looking up a new one.

2005-03-07  Tom Tromey  <tromey@redhat.com>

	PR java/20215:
	* include/jvm.h (_Jv_Linker::find_field_helper): Updated.
	* link.cc (find_field_helper): Added 'type' argument.
	(find_field): Updated.

2005-04-07  Scott Gilbertson  <scottg@mantatest.com>
	* gnu/gcj/xlib/natXAnyEvent.cc (loadNext): Added timeout.
	* gnu/awt/xlib/XCanvasPeer.java (setBackground): Removed
	throw UnsupportedOperationException, fixed comments.
	(setFont, setForeground): Fixed comments.
	* gnu/awt/xlib/XEventLoop.java (postNextEvent): Changed
	return type to boolean.
	(getNextEvent): Fixed javadocs.
	* gnu/awt/xlib/XToolkit.java (interrupted): Removed field.
	(nativeQueueEmpty): Removed unused code.
	(iterateNativeQueue): Removed outer loop.

2005-03-06  Roger Sayle  <roger@eyesopen.com>

	PR libgcj/20155
	* Makefile.am (libgcj0_convenience.la): Revert last change.
	* Makefile.in: Regenerate.

2005-03-05  Anthony Green  <green@redhat.com>

	* jni/gtk-peer/gtk_jawt.c (classpath_jawt_get_drawable,
	classpath_jawt_lock, classpath_jawt_unlock): New functions.
	* jawt.c (_Jv_AWTLock, _Jv_AWTUnlock): New functions.
	(_Jv_GetDrawingSurface): Set visualID.
	(_Jv_FreeDrawingSurfaceInfo): Clear visualID.
	(JAWT_GetAWT): Set Lock and Unlock.
	* include/jawt_md.h (struct _JAWT_X11DrawingSurfaceInfo): Add
	visualID.
	* include/jawt.h (JAWT_VERSION_1_4, JAWT_LOCK_ERROR,
	JAWT_LOCK_CLIP_CHANGED, JAWT_LOCK_BOUNDS_CHANGED,
	JAWT_LOCK_SURFACE_CHANGED): New macros.
	(struct _JAWT): Add Lock and Unlock.

2005-03-05  Roger Sayle  <roger@eyesopen.com>
	    Alexandre Oliva  <aoliva@redhat.com>
	    Kelley Cook  <kcook@gcc.gnu.org>

	PR libgcj/20155
	* Makefile.am (libgcj0_convenience.la): New rule to create a file
	of the object files to link to avoid exceeding the command line
	length limits on some platforms.
	(clean-local): Clean up objectlist files.
	* Makefile.in: Regenerate.

2005-03-05  Andreas Tobler  <a.tobler@schweiz.ch>

	* java/lang/dtoa.c (_dtoa_r): Initialize variables ilim, ilim1 and
	spec_case. Initialize pointer mlo.

	* java/lang/strtod.c (_strtod_r): Initialize pointers bb, bd, ds and
	delta.

	* java/lang/e_asin.c (__ieee754_asin): Initialize variable t.

	* java/lang/e_exp.c (__ieee754_exp): Initialize variables hi, lo
	and k.

	* java/lang/e_rem_pio2.c (__ieee754_rem_pio2): Initialize
	uninitialized variable z.

	* gnu/java/net/natPlainDatagramSocketImplPosix.cc (mcastGrp): Ifdef
	possible unused variables.

	* gnu/java/nio/natPipeImplPosix.cc (init): Remove self.

	* jawt.c: Include <stdlib.h> to fix implict declaration of malloc.

2005-03-03  Thomas Fitzsimmons  <fitzsim@redhat.com>

	PR libgcj/20292
	* testsuite/libjava.jni/jni.exp
	(gcj_jni_invocation_compile_c_to_binary): Add -I. -I.. to compile
	flags.
	(gcj_jni_invocation_test_one): Add -L../.libs to cxx flags.

2005-02-23  David Daney  <ddaney@avtrex.com>

	* configure.host: Don't use -mxgot for MIPS builds.

2005-02-28  Paolo Bonzini  <bonzini@gnu.org>

	PR bootstrap/17383
	* configure.ac: Call GCC_TOPLEV_SUBDIRS.
	(COMPPATH): Removed.
	(ZIP, GCJH): Replace it with ../$(host_subdir).
	(built_gcc_dir): Add $(host_subdir).
	* configure: Regenerate.
	* Makefile.in, include/Makefile.in, testsuite/Makefile.in,
	gcj/Makefile.in, external/Makefile.in, external/sax/Makefile.in,
	external/w3c_dom/Makefile.in: Regenerate.

2005-02-24  David Gilbert  <david.gilbert@object-refinery.com>

	* java/awt/font/TextAttribute.java: changed names to lower case;
	(readResolve): implemented.
	Added doc comments all over.

2005-02-23  Thomas Fitzsimmons  <fitzsim@redhat.com>

	PR libgcj/16923
	* jni.cc (JNI_CreateJavaVM): Check JNI version.  Cast args to
	JvVMInitArgs.  Pass args to _Jv_CreateJavaVM and check return
	value.  Move argument parsing code to prims.cc.
	* prims.cc (no_properties): Remove.
	(_Jv_Compiler_Properties): Initialize to NULL.
	(_Jv_Properties_Count): Initialize to 0.
	(parse_verbose_args): New function.
	(parse_init_args): New function.
	(_Jv_CreateJavaVM): Call parse_init_args.
	(_Jv_RunMain): Check return value of _Jv_CreateJavaVM.
	* gcj/cni.h (JvVMOption): New struct.
	(JvVMInitArgs): Likewise.
	(JvCreateJavaVM): Declare vm_args as JvVMInitArgs* rather than
	void*.
	* libjava/gcj/javaprims.h (_Jv_VMOption): New struct.
	(_Jv_VMInitArgs): Likewise.
	* include/java-props.h (_Jv_Properties_Count): Declare.
	* java/lang/natRuntime.cc (insertSystemProperties): Use
	_Jv_Properties_Count in for loop exit condition.
	* testsuite/libjava.jni/jni.exp
	(gcj_invocation_compile_c_to_binary): New procedure.
	(gcj_invocation_test_one): Likewise.
	(gcj_jni_run): Run JNI invocation API tests.
	* testsuite/libjava.jni/invocation/PR16923.c,
	testsuite/libjava.jni/invocation/PR16923.java,
	testsuite/libjava.jni/invocation/PR16923.out: New test.

2005-02-23  Michael Koch  <konqueror@gmx.de>

	* Makefile.am: Added new file gnu/java/nio/ChannelReader.java.
	* Makefile.in: Regenerated.

2005-02-23  Robert Schuster  <thebohemian@gmx.net>

	* gnu/java/nio/ChannelReader: Fixed comments.

2005-02-23  Robert Schuster  <thebohemian@gmx.net>

	* java/nio/channels/Channels: Added FIXMEs about
	stub method implementation.
	(newReader): Implemented.
	* gnu/java/nio/ChannelReader: New class.

2005-02-23  Michael Koch  <konqueror@gmx.de>

	* java/text/SimpleDateFormat.java:
	Removed unused import.

2005-02-22  Thomas Fitzsimmons  <fitzsim@redhat.com>

	PR libgcj/20029:
	* Makefile.am (lib_gnu_java_awt_peer_gtk_la_CFLAGS): Add X_CFLAGS.
	(lib_gnu_java_awt_peer_gtk_la_LDFLAGS): Add X_LIBS and -lXtst.
	* Makefile.in: Regenerate.
	* configure.ac: Check for libXtst.
	* configure: Regenerate.

2005-02-22  Mark Wielaard  <address@bogus.example.com>

	* java/security/AlgorithmParameterGenerator.java (getInstance):
	Mention provider when throwing NoSuchProviderException.
	* java/security/AlgorithmParameters.java (getInstance): Likewise.
	* java/security/KeyFactory.java (getInstance): Likewise.
	* java/security/KeyStore.java (getInstance): Likewise.
	* java/security/SecureRandom.java (getInstance): Likewise.
	* java/security/cert/CertificateFactory.java (getInstance): Likewise.

2005-02-22  Jeroen Frijters  <jeroen@frijters.net>

	* java/lang/reflect/Proxy.java,
	java/net/URL.java,
	java/security/SecureRandom.java,
	java/util/Timer.java,
	java/util/prefs/AbstractPreferences.java:
	Don't catch java.lang.ThreadDeath.

2005-02-22  David Gilbert  <david.gilbert@object-refinery.com>

	* java/awt/font/TransformAttribute.java,
	(TransformAttribute(AffineTransform)): throw
	IllegalArgumentException for null transform.
	(getTransform): return a copy of transform.
	Added doc comments to all.

2005-02-22  Jeroen Frijters  <jeroen@frijters.net>

	* java/io/Externalizable.java,
	java/io/Serializable.java
	(serialVersionUID): Removed.
	* java/rmi/server/RemoteObject.java,
	java/rmi/server/UID.java
	(serialVersionUID): Made private.
	* java/rmi/server/RemoteRef.java,
	java/rmi/server/ServerRef.java
	(serialVersionUID): Set proper value.
	* java/security/interfaces/DSAPrivateKey.java,
	java/security/interfaces/DSAPublicKey.java,
	java/security/interfaces/RSAMultiPrimePrivateCrtKey.java,
	java/security/interfaces/RSAPrivateCrtKey.java,
	java/security/interfaces/RSAPrivateKey.java,
	java/security/interfaces/RSAPublicKey.java,
	javax/crypto/SecretKey.java
	(serialVersionUID): Added.

2005-02-22  Tom Tromey  <tromey@redhat.com>

	* java/lang/Object.h (_JvObjectPrefix): Declare as extern "Java".

2005-02-22  Tom Tromey  <tromey@redhat.com>

	PR java/20056:
	* verify.cc (type::EITHER): New constant.
	(check_field_constant): Use it.
	(type::compatible): Handle it.

2005-02-22  Michael Koch  <konqueror@gmx.de>

	* gnu/java/security/PolicyFile.java,
	gnu/java/security/pkcs/PKCS7SignedData.java,
	gnu/java/security/pkcs/SignerInfo.java:
	Fixed copyright header.

2005-02-22  Jeroen Frijters  <jeroen@frijters.net>

	* java/beans/PropertyDescriptor.java
	(PropertyDescriptor,setReadMethod): Set propertyType.

2005-02-22  Michael Koch  <konqueror@gmx.de>

	* java/nio/DirectByteBufferImpl.java
	(owner): Fixed formatting of javadoc.
	* java/text/DateFormat.java
	(getAvailableLocales): Fixed formatting.
	* java/text/SimpleDateFormat.java:
	Fixed formatting and import statement order.
	* java/util/Calendar.java
	(Calendar): Fixed javadoc to be HTML compliant.
	* java/util/SimpleTimeZone.java:
	Fixed javadocs.

2005-02-22  Roman Kennke <roman@ontographics.com>

	* javax/swing/plaf/basic/BasicLookAndFeel.java
	(initComponentDefaults): Fixed Button left and right margin.

2005-02-22  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* java/awt/Robot.java (waitForIdle): Call invokeAndWait on an
	empty Runnable.

	PR libgcj/17952:
	* gnu/java/awt/peer/gtk/GtkWindowPeer.java,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c
	(getWidth): New method.
	(getHeight): Likewise.
	(create): Remove width, height and insets parameters.  Move size
	setup ...
	(realize_cb): ... here.  New function.
	(connectSignals): Connect realize_cb.
	(request_frame_extents): Remove FIXME.  Move
	postInsetsChangedEvent lookup ...
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkToolkit.c (gtkInit):
	... here.  Look up GtkWindowPeer getWidth and getHeight methods.
	* jni/gtk-peer/gtkpeer.h (postInsetsChangedEventID): Declare
	jmethodID.
	(windowGetWidthID): Likewise.
	(windowGetHeightID): Likewise.

2005-02-21  Thomas Fitzsimmons  <fitzsim@redhat.com>

	PR libgcj/19842
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEvents.c
	(button_to_awt_mods): Return BUTTON masks, not BUTTON_DOWN masks.

2005-02-21  Bryce McKinlay  <mckinlay@redhat.com>

	Merge serialization from GNU Classpath.
	* gcj/method.h: Add missing #includes.
	* java/io/ObjectInputStream.java (readClassDescriptor): Check for
	primitive class IDs on the stream here...
	(resolveClass): ...not here.
	* java/io/ObjectStreamField.java: Use VMObjectStream class calls to set
	fields.
	* java/io/VMObjectStreamClass.java (setDoubleNative, setFloatNative,
	setLongNative, setIntNative, setShortNative, setCharNative,
	setByteNative, setBooleanNative, setObjectNative): New native methods.
	* java/io/natVMObjectStreamClass.java (setDoubleNative, setFloatNative,
	setLongNative, setIntNative, setShortNative, setCharNative,
	setByteNative, setBooleanNative, setObjectNative): Implement them.
	* java/io/natObjectInputStream.cc (allocateObject): Add new parameters
	from Classpath's version. Use _Jv_FromReflectedConstructor(). Call
	the constructor here.
	(callConstructor): Removed.
	(getCallersClassLoader): Removed.
	* java/lang/reflect/Field.java (setByte, setShort, setInt, setLong,
	setFloat, setDouble, setChar, setBoolean): Add 'checkFinal' parameter
	to control whether setting final field values is permitted. Call
	getAddr() with checkFinal parameter instead of setAddr().
	* java/lang/reflect/natField.cc (getType): Lookup and resolve field
	only if not done already.
	(getAddr): Add checkFinal parameter. Do the final field check only if
	checkFinal is set.
	(setAddr): Removed.

2005-02-21  Mark Wielaard  <mark@klomp.org>

	# Fixes bug #11957
	* java/io/ObjectInputStream.java (resolveClass): Don't check "void"
	twice.

2005-02-21  Mark Wielaard  <mark@klomp.org>

	Fixes bug #11618.
	* java/io/ObjectInputStream.java (readClassDescriptor): Handle classes
	without a super class and us ObjectStreamClass.lookupForClassObject().
	(resolveClass): Check for primitive types.
	(lookupClass): Return null when argument is null.

2005-02-21  Jeroen Frijters  <jeroen@frijters.net>

	* java/io/ObjectInputStream.java
	(readObject): Fix to consume TC_ENDBLOCKDATA after readExternal.

2005-02-21  Jeroen Frijters  <jeroen@frijters.net>

	* java/io/ObjectOutputStream.java
	(writeObject, callWriteMethod): Replaced reflection with accessing
	cached info in ObjectStreamClass.
	(getMethod): Removed.
	* java/io/ObjectStreamClass.java
	(findMethod): Added check to make sure the method found has the
	right modifiers.
	(cacheMethods): Added writeReplace and writeObject methods.
	(setFlags): Look at new writeObjectMethod field instead of doing
	reflection again.
	(writeReplaceMethod): New field.
	(writeObjectMethod): New field.

2005-02-21  Guilhem Lavaux  <guilhem@kaffe.org>
	Jeroen Frijters  <jeroen@frijters.net>

	* java/io/ObjectInputStream.java
	(newObject): Changed prototype. Get a constructor reflect object
	directly.
	(callConstructor): Removed.
	(allocateObject): Changed prototype.
	(readClassDescriptor): Build the constructor reflection directly.
	(readObject): Invoke newObject using the new prototype.

	* java/io/ObjectStreamClass.java
	(firstNonSerializableParent): Removed.
	(firstNonSerializableParentConstructor): Added.

2005-02-21  Mark Wielaard  <mark@klomp.org>

	* gnu/java/locale/LocaleInformation_en.java: Extend
	localPatternChars to "GyMdkHmsSEDFwWahKzYeugAZ".

2005-02-21  Mark Wielaard  <mark@klomp.org>

	* java/text/SimpleDateFormat.java
	(SimpleDateFormat(String, DateFormatSymbols)): Throw
	NullPointerException when formatData is null.

2005-02-21  Mark Wielaard  <mark@klomp.org>

	* java/util/SimpleTimeZone.java (getOffset): Calculate beforeEnd by
	taking dstSavings into account.

2005-02-21  Sven de Marothy <sven@physto.se>

	* java/text/SimpleDateFormat.java,
	(parse): Set correct DST_OFFSET to the correct value.

2005-02-21  Mark Wielaard  <mark@klomp.org>

	* java/util/SimpleTimeZone.java (checkRule): Throw
	IllegalArgumentException when month out of range.

2005-02-21  Sven de Marothy  <sven@physto.se>

	* java/util/GregorianCalendar.java,
	(add): Don't set fields directly anymore. Use set()

2005-02-21  Mark Wielaard  <mark@klomp.org>

	* java/text/SimpleDateFormat.java (CompiledField.toString):
	Use StringBuffer, not StringBuilder.
	(toString): Likewise.

2005-02-21  Sven de Marothy  <sven@physto.se>

	* java/util/Calendar.java
	(clear): Dates should clear to local time.
	* java/util/GregorianCalendar.java
	(computeTime): Fix priority problem with DAY_OF_WEEK,
	Handle non-sunday-startig weeks and minimumDaysInFirstWeek.

2005-02-21  Sven de Marothy  <sven@physto.se>

	* java/util/Calendar.java
	(Calendar): Constructor should clear fields.

2005-02-21  Sven de Marothy  <sven@physto.se>

	* java/text/SimpleDateFormat.java
	(parse): Tweak handling of 2-year dates
	* java/util/Calendar.java
	(clear): Clear fields to correct value.
	* java/util/GregorianCalendar.java
	(computeTime): Correct handling of time zones.
	Correct field minimum values.

2005-02-21  Sven de Marothy  <sven@physto.se>

	* java/util/Calendar.java
	(set) Invalidate all fields on first call to set().

2005-02-21  Sven de Marothy  <sven@physto.se>

	* java/util/GregorianCalendar.java
	(computeTime): Fixed handling of time zones.

2005-02-21  Sven de Marothy  <sven@physto.se>

	* java/util/Calendar.java
	(clear): Set values to Epoch instead of zero.
	(set): Set isSet to the relevant field pattern instead of just
	the field.
	* java/util/GregorianCalendar.java
	(getBundle): Removed.
	(getDayOfYear): Removed.
	(getFirstDayOfMonth): New private method.
	(nonLeniencyCheck): New private method.
	(computeTime): Correct handling of insufficient data.

2005-02-21  Sven de Marothy <sven@physto.se>

	* java/util/Calendar.java: Invalidate ERA field on setting
	the YEAR.
	* java/util/SimpleTimeZone.java:
	(getDaysInMonth): Reimplemented.
	* java/util/GregorianCalendar.java:
	(getLinearTime): Removed.
	(isLeapYear(int,boolean)): Removed.
	(before(), after()): Removed.
	(computeTime): Reimplemented.

2005-02-21  Sven de Marothy <sven@physto.se>

	* java/util/Calendar.java: Reformatted.
	* java/util/GregorianCalendar.java: Reformatted.
	* java/util/SimpleTimeZone.java: Reformatted.

2005-02-21  Sven de Marothy <sven@physto.se>

	* java/util/GregorianCalendar.java
	(GregorianCalendar): Update fields in the constructor

2005-02-21  Noa Resare  <noa@resare.com>

	* java/util/Calendar.java (explicitDSTOffset): New instance field.
	(set(int,int)): Set and use new field.
	(set(int,int,int)): Check new field.

2005-02-21  Noa Resare  <address@hidden>

	* java/util/Calendar.java(set):
	Fix for DST related regression.

2005-02-21  Jeroen Frijters  <jeroen@frijters.net>

	* java/util/Calendar.java
	(setTimeInMillis): Added call to clear, removed computeFields call.
	* java/util/Date.java
	(Date(int,int,int,int,int,int)): Removed workaround for
	GregorianCalendar bug.
	* java/util/GregorianCalendar.java
	(GregorianCalendar): Chained all constructors to a (new)
	common constructor.
	(computeTime): Fixed support for lenient month treatment.
	(getLinearDay): Return long instead of int.
	(calculateDay): Added fields argument and changed day argument
	to long.

2005-02-21  Andrew John Hughes  <gnu_andrew@member.fsf.org>

	* java/text/SimpleDateFormat.java
	Lots of documentation updates.
	(readObject(java.io.ObjectInputStream)): Wraps
	IllegalArgumentException as specified.
	(compileFormat(String)): Uses standardChars
	rather than the local pattern characters.
	Throws IllegalArgumentException rather than
	storing a -1 field.
	(toString()): Extended to include all variables
	in a better format.
	(translateLocalizedPattern(String, String, String)):
	Renamed to better define the use of this method.

2005-02-21  Andrew John Hughes  <gnu_andrew@member.fsf.org>

	* java/text/DateFormat.java:
	Documented pattern character offset constants and
	added new ones.
	(Field): Added new static fields for new pattern chars.
	* java/text/SimpleDateFormat.java:
	(CompiledField): Changed name of FieldSizePair class
	to CompiledField after adding the character as an
	attribute.  Changed fields to private and added
	accessors to give encapsulation.
	(CompiledField.CompiledField(int,int,char)): Extended
	with character field.
	(CompiledField.getField()): New accessor method.
	(CompiledField.getSize()): New acceessor method.
	(CompiledField.getCharacter()): New accessor method.
	(CompiledField.toString()): Added primarily for debugging.
	(standardChars): Now uses extended 24 character sequence.
	(compileFormat(String)): Changed to use CompiledField.
	(formatWithAttribute(java.util.Date, gnu.java.text.FormatBuffer,
	java.text.FieldPosition)): Changed to use CompiledField.
	New handler for RFC 822 timezones added.

2005-02-21  Andrew John Hughes  <gnu_andrew@member.fsf.org>

	* java/text/SimpleDateFormat.java:
	(parse(String, java.text.ParsePosition)):
	Changed 'E' and 'M' cases to use both
	short and long names.  Extended 'z'
	case to also handle 'Z', and deal
	with simple GMT offsets such as +0100.
	(computeOffset(String)): New private method,
	which converts a GMT offset specification,
	such as GMT-0500 to a numeric offset in
	milliseconds.
	* java/util/TimeZone.java:
	(timezones()): Added "CEST", the daylight
	savings time version of "CET", or Central
	European Time.

2005-02-21  Ito Kazumitsu  <kaz@maczuka.gcd.org>

	* java/text/SimpleDateFormat.java:
	(parse): Set the DST offset to 0 when parsing
	GMT offset timezones.

2005-02-21  Ito Kazumitsu  <kaz@maczuka.gcd.org>

	* java/text/SimpleDateFormat.java:
	(parse): Use offset to set ZONE_OFFSET
	rather than the DST_OFFSET, so that
	GMT offset timezones change the right
	one.

2005-02-21  Andrew John Hughes  <gnu_andrew@member.fsf.org>

	* java/text/SimpleDateFormat.java:
	(getDateFormatSymbols()): return a copy
	(setDateFormatSymbols(java.text.DateFormatSymbols)):
	throw exception on null input
	(clone()): implemented to clone
	internal fields

2005-02-21  Sven de Marothy <sven@physto.se>

	* java/text/SimpleDateFormat.java
	(parse): comparison should be case-insensitive, ignore null
	strings.

2005-02-21  Robert Schuster  <theBohemian@gmx.net>

	* gnu/java/beans/IntrospectionIncubator.java
	(addMethod) Reverts the patch that ntroduced a regression (see bug
	https://savannah.gnu.org/bugs/?func=detailitem&item_id=10938).

2005-02-21  Michael Koch  <konqueror@gmx.de>

	* java/awt/Checkbox.java
	(next_checkbox_number): New static variable.
	(generateName): New method.
	(getUniqueLong): Likewise.
	* java/awt/Window.java
	(next_window_number): New static variable.
	(generateName): New method.
	(getUniqueLong): Likewise.

2005-02-21  Mark Wielaard  <mark@klomp.org>

	* java/util/jar/JarFile.java (verifyHashes): Check whether ZipEntry
	exists.

2005-02-21  Andrew Haley  <aph@redhat.com>

	* Makefile.in: Rebuilt.
	* Makefile.am (nat_source_files): Added natLogger.cc.
	* java/util/logging/natLogger.cc: New file.
	* java/util/logging/Logger.java (getCallerStackFrame): Now
	native.

2005-02-21  Andreas Tobler  <a.tobler@schweiz.ch>

	* Makefile.am (all_property_files): Remove left over.
	(classes.stamp): Add stamp for the ONESTEP build, also known as
	--enable-libgcj-multifile.
	* Makefile.in: Regenerated.

2005-02-21  Michael Koch  <konqueror@gmx.de>

	* java/awt/Button.java,
	java/awt/Container.java,
	java/awt/Font.java,
	java/awt/Frame.java,
	java/text/CollationElementIterator.java,
	java/text/RuleBasedCollator.java,
	java/util/PropertyPermission.java:
	Fixed formatting issues all over.

2005-02-21  Mark Wielaard  <mark@klomp.org>

	* java/io/FileDescriptor.java (sync): Add real exception to
	SyncFailedException.

2005-02-21  Michael Koch  <konqueror@gmx.de>

	* java/io/InputStreamReader.java:
	Fixed @author tag.

2005-02-20  Rutger Ovidius  <ovidr@users.sourceforge.net>

	PR libgcj/19728:
	* gnu/java/security/provider/Gnu.java (Gnu): Add SHA-160 alias.

2005-02-20  Dalibor Topic  <robilad@kaffe.org>

	* libraries/javalib/gnu/regexp/RE.java,
	libraries/javalib/java/io/ObjectInputStream.java,
	libraries/javalib/java/security/AllPermission.java,
	libraries/javalib/java/security/BasicPermission.java,
	libraries/javalib/java/security/Permissions.java,
	libraries/javalib/java/text/MessageFormat.java:
	Made 'inner' classes real public static inner classes,
	and made them final where possible, or removed them
	where unused.

2005-02-20  Michael Koch  <konqueror@gmx.de>

	* gnu/java/text/FormatCharacterIterator.java:
	Removed redundant modifiers.

2005-02-19  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* jni/gtk-peer/gthread-jni.c (throw): Call g_snprintf instead of
	snprintf.

2005-02-19  Michael Koch  <konqueror@gmx.de>

	* Makefile.am: Added new files in gnu/java/beans and
	java/beans/XMLDecoder.java.
	* Makefile.in: Regenerated.

2005-02-19  Robert Schuster  <thebohemian@gmx.net>

	* gnu/java/beans/decoder/GrowableArrayContext.java: Fixed
	assignment behavior by using java.lang.reflect.Array.set()
	directly.

2005-02-19  Dalibor Topic  <robilad@kaffe.org>

	* gnu/java/beans/EmptyBeanInfo.java,
	gnu/java/beans/info/ComponentBeanInfo.java:
	Removed unused files.

2005-02-19  Robert Schuster <thebohemian@gmx.net>

	* gnu/java/beans/DummyAppletStub.java: Add dummy implementation
	of AppletStub for java.beans.Beans.instantiate.
	* gnu/java/beans/DummyAppletContext.java: Add dummy implementation
	of AppletContext.
	* java/beans/Beans: Added 1.4 functionality, fixed user documentation
	to be conformant with Javadoc guidelines.
	(instantiate): Added two more overloaded variants, reworked user
	documentation, fixed exception behavior, fixed behavior when
	deserializing null.

2005-02-19  Mark Wielaard  <mark@klomp.org>

	* gnu/java/beans/decoder/DummyHandler.java: Add return statements for
	failing methods.
	* gnu/java/beans/decoder/DummyContext.java: Likewise.

2005-02-19  Robert Schuster  <theBohemian@gmx.net>

	* gnu/java/beans/decoder/AbstractContext.java,
	gnu/java/beans/decoder/AbstractCreatableContext.java,
	gnu/java/beans/decoder/AbstractElementHandler.java,
	gnu/java/beans/decoder/AbstractObjectContext.java,
	gnu/java/beans/decoder/ArrayContext.java,
	gnu/java/beans/decoder/ArrayHandler.java,
	gnu/java/beans/decoder/AssemblyException.java,
	gnu/java/beans/decoder/BooleanHandler.java,
	gnu/java/beans/decoder/ByteHandler.java,
	gnu/java/beans/decoder/CharHandler.java,
	gnu/java/beans/decoder/ClassHandler.java,
	gnu/java/beans/decoder/ConstructorContext.java,
	gnu/java/beans/decoder/Context.java,
	gnu/java/beans/decoder/DecoderContext.java,
	gnu/java/beans/decoder/DefaultExceptionListener.java,
	gnu/java/beans/decoder/DoubleHandler.java,
	gnu/java/beans/decoder/DummyContext.java,
	gnu/java/beans/decoder/DummyHandler.java,
	gnu/java/beans/decoder/ElementHandler.java,
	gnu/java/beans/decoder/FloatHandler.java,
	gnu/java/beans/decoder/GrowableArrayContext.java,
	gnu/java/beans/decoder/IndexContext.java,
	gnu/java/beans/decoder/IntHandler.java,
	gnu/java/beans/decoder/JavaHandler.java,
	gnu/java/beans/decoder/LongHandler.java,
	gnu/java/beans/decoder/MethodContext.java,
	gnu/java/beans/decoder/MethodFinder.java,
	gnu/java/beans/decoder/NullHandler.java,
	gnu/java/beans/decoder/ObjectContext.java,
	gnu/java/beans/decoder/ObjectHandler.java,
	gnu/java/beans/decoder/PersistenceParser.java,
	gnu/java/beans/decoder/PropertyContext.java,
	gnu/java/beans/decoder/ShortHandler.java,
	gnu/java/beans/decoder/SimpleHandler.java,
	gnu/java/beans/decoder/StaticMethodContext.java,
	gnu/java/beans/decoder/StringHandler.java,
	gnu/java/beans/decoder/VoidHandler.java: New class
	implementing java.beans.XMLDecoder decoding functionality.
	* java/beans/XMLDecoder.java: New class.

2005-02-19  Michael Koch  <konqueror@gmx.de>

	* javax/swing/JTextField.java
	(notfiyAction): Added javadoc.

2005-02-19  Sven de Marothy  <sven@physto.se>

	* javax/swing/SpinnerDateModel.java: Implemented.

2005-02-19  Michael Koch  <konqueror@gmx.de>

	* Makefile.am: Added javax/swing/SpinnerDateModel.java.
	* Makefile.in: Regenerated.

2005-02-19  Michael Koch  <konqueror@gmx.de>

	* gnu/java/nio/SelectorImpl.java:
	Reworked import statements.
	(register): Removed unused code.
	* java/nio/channels/Channels.java: Reformatted.
	* java/nio/charset/Charset.java: Likewise.
	* java/rmi/server/RemoteObject.java
	(serialVersionUID): Made private.
	* java/rmi/server/UID.java
	(serialVersionUID): Likewise.

2005-02-19  Michael Koch  <konqueror@gmx.de>

	* gnu/java/net/protocol/ftp/ActiveModeDTP.java,
	gnu/java/net/protocol/ftp/BlockInputStream.java,
	gnu/java/net/protocol/ftp/BlockOutputStream.java,
	gnu/java/net/protocol/ftp/CompressedInputStream.java,
	gnu/java/net/protocol/ftp/CompressedOutputStream.java,
	gnu/java/net/protocol/ftp/DTPInputStream.java,
	gnu/java/net/protocol/ftp/DTP.java,
	gnu/java/net/protocol/ftp/DTPOutputStream.java,
	gnu/java/net/protocol/ftp/FTPConnection.java,
	gnu/java/net/protocol/ftp/FTPException.java,
	gnu/java/net/protocol/ftp/FTPResponse.java,
	gnu/java/net/protocol/ftp/FTPURLConnection.java,
	gnu/java/net/protocol/ftp/Handler.java,
	gnu/java/net/protocol/ftp/PassiveModeDTP.java,
	gnu/java/net/protocol/ftp/StreamInputStream.java,
	gnu/java/net/protocol/ftp/StreamOutputStream.java,
	gnu/java/net/CRLFInputStream.java,
	gnu/java/net/CRLFOutputStream.java,
	gnu/java/net/GetLocalHostAction.java,
	gnu/java/net/protocol/ftp/package.html: New files.
	* Makefile.am: Added new files.
	* Makefile.in: Regenerated.

2005-02-18  Tom Tromey  <tromey@redhat.com>

	* link.cc (make_vtable): Remove abstract method check.
	(append_partial_itable): Likewise.

	PR java/20056:
	* verify.cc (type::equals): Fixed test.
	* testsuite/libjava.lang/PR20056.out: New file.
	* testsuite/libjava.lang/PR20056.java: New file.

2005-02-18  Bryce McKinlay  <mckinlay@redhat.com>

	* java/util/LinkedHashMap (addEntry): Call remove() with key argument,
	not the HashEntry. Reported by Jean-Marie White.

2005-02-18  Tom Tromey  <tromey@redhat.com>

	PR java/20056:
	* include/jvm.h (_Jv_Linker::has_field_p): Declare.
	* link.cc (has_field_p): New function.
	* verify.cc (check_field_constant): Added 'putfield' argument.
	(verify_instructions_0): Updated.
	(type::equals): New method.

2005-02-18  Anthony Green  <green@redhat.com>

	* NEWS: Draft of libgcj NEWS for 4.0.

2005-02-18  Anthony Green  <green@redhat.com>

	* java/lang/natRuntime.cc (insertSystemProperties): Normalize x86
	architecture names to "i386" for compatibility reasons.  Win32
	still uses "x86".

2005-02-18  Anthony Green  <green@redhat.com>

	* gij.cc (version): Change year for '--version' to 2005.
	* gnu/gcj/convert/Convert.java: Ditto.
	* gnu/java/rmi/rmic/RMIC.java: Ditto.
	* gnu/java/rmi/registry/RegistryImpl.java: Ditto.

	* gnu/gcj/tools/gcj_dbtool/Main.java: Only show the most
	recent copyright year in `--version' output.

2005-02-18  Robert Schuster <thebohemian@gmx.net>

	* java/nio/charset/Charset.java (forName): Throws
	IllegalArgumentException when argument is null
	and added documentation.

2005-02-17  Ito Kazumitsu  <kaz@maczuka.gcd.org>

	* gnu/java/nio/channels/FileChannelImpl.java (write(ByteBuffer)):
	Move the position of the source buffer forward.

2005-02-17  Tom Tromey  <tromey@redhat.com>

	* java/lang/Class.h (_Jv_GetMethodString): Updated declaration.
	* java/lang/reflect/natMethod.cc (_Jv_CallAnyMethodA): Updated.
	* java/lang/natClass.cc (_Jv_LookupInterfaceMethod): Updated.
	* link.cc (_Jv_GetMethodString): Added 'derived' argument.
	Changed type of second argument.  Rewrote.
	(make_vtable): Use it.
	(append_partial_itable): Updated.
	(layout_vtable_methods): Updated.

2005-02-17  Michael Koch  <konqueror@gmx.de>

	* gnu/java/net/PlainSocketImpl.java
	(shutdownInput): Added javadoc.
	(shutdownOutput): Likewise.

2005-02-17  Michael Koch  <konqueror@gmx.de>

	* javax/print/attribute/standard/Chromaticity.java,
	javax/print/attribute/standard/Destination.java,
	javax/print/attribute/standard/MediaPrintableArea.java,
	javax/print/attribute/standard/MediaSize.java: New files.
	* Makefile.am: Added new files.
	* Makefile.in: Regenerated.

2005-02-17  Andrew John Hughes  <gnu_andrew@member.fsf.org>
	    Michael Koch  <konqueror@gmx.de>

	* gnu/java/net/protocol/http/Cookie.java,
	gnu/java/net/protocol/http/HTTPConnection.java,
	gnu/java/net/protocol/http/HTTPDateFormat.java,
	gnu/java/net/protocol/http/Request.java,
	gnu/java/nio/PipeImpl.java,
	gnu/java/rmi/dgc/DGCImpl.java,
	gnu/java/rmi/server/ConnectionRunnerPool.java,
	gnu/java/rmi/server/UnicastConnectionManager.java,
	gnu/java/security/der/DERWriter.java,
	gnu/java/security/pkcs/SignerInfo.java,
	gnu/java/security/provider/EncodedKeyFactory.java,
	gnu/java/security/provider/GnuDHPublicKey.java,
	gnu/java/security/provider/GnuDSAPrivateKey.java,
	gnu/java/security/provider/GnuDSAPublicKey.java,
	gnu/java/security/provider/PKIXCertPathValidatorImpl.java,
	gnu/java/security/x509/X500DistinguishedName.java,
	gnu/java/security/x509/X509CRL.java,
	gnu/java/security/x509/X509CRLEntry.java,
	gnu/java/security/x509/X509Certificate.java,
	gnu/java/security/x509/ext/AuthorityKeyIdentifier.java,
	gnu/java/security/x509/ext/CertificatePolicies.java,
	gnu/java/security/x509/ext/PolicyConstraint.java,
	gnu/xml/dom/Consumer.java,
	gnu/xml/dom/DomCharacterData.java,
	gnu/xml/dom/DomDocument.java,
	gnu/xml/dom/DomDocumentBuilder.java,
	gnu/xml/dom/DomIterator.java,
	gnu/xml/dom/DomNode.java,
	gnu/xml/dom/DomXPathExpression.java,
	gnu/xml/dom/DomXPathResult.java,
	gnu/xml/dom/JAXPFactory.java,
	gnu/xml/pipeline/CallFilter.java,
	gnu/xml/pipeline/DomConsumer.java,
	gnu/xml/pipeline/LinkFilter.java,
	gnu/xml/pipeline/NSFilter.java,
	gnu/xml/pipeline/TeeConsumer.java,
	gnu/xml/pipeline/ValidationConsumer.java,
	gnu/xml/pipeline/WellFormednessFilter.java,
	gnu/xml/pipeline/XIncludeFilter.java,
	gnu/xml/pipeline/XsltFilter.java,
	gnu/xml/transform/ApplyImportsNode.java,
	gnu/xml/transform/Bindings.java,
	gnu/xml/transform/DocumentFunction.java,
	gnu/xml/transform/FormatNumberFunction.java,
	gnu/xml/transform/NodeNumberNode.java,
	gnu/xml/transform/NumberNode.java,
	gnu/xml/transform/Stylesheet.java,
	gnu/xml/transform/SystemPropertyFunction.java,
	gnu/xml/transform/Template.java,
	gnu/xml/transform/TemplatesImpl.java,
	gnu/xml/transform/TransformerImpl.java,
	gnu/xml/transform/ValueOfNode.java,
	gnu/xml/transform/XSLURIResolver.java,
	gnu/xml/util/DoParse.java,
	gnu/xml/util/Resolver.java,
	gnu/xml/xpath/Expr.java,
	gnu/xml/xpath/FunctionCall.java,
	gnu/xml/xpath/RelationalExpr.java,
	gnu/xml/xpath/Selector.java,
	gnu/xml/xpath/XPathParser.java:
	Reworked import statements, fixed modifier order and some little
	formatting issues.

2005-02-17  Ito Kazumitsu  <kaz@maczuka.gcd.org>

	* java/nio/ByteBufferImpl.java (compact):
	Set position and limit even if no bytes were moved.

2005-02-17  Michael Koch  <konqueror@gmx.de>

	* java/nio/CharViewBufferImpl.java (compact): Likewise.
	* java/nio/DirectByteBufferImpl.java (compact): Likewise.
	* java/nio/DoubleViewBufferImpl.java (compact): Likewise.
	* java/nio/FloatViewBufferImpl.java (compact): Likewise.
	* java/nio/IntViewBufferImpl.java (compact): Likewise.
	* java/nio/LongViewBufferImpl.java (compact): Likewise.
	* java/nio/MappedByteBufferImpl.java (compact): Likewise.
	* java/nio/ShortViewBufferImpl.java (compact): Likewise.
	* java/nio/FloatBufferImpl.java (compact): Set position.
	* java/nio/CharBufferImpl.java (compact): Likewise.
	* java/nio/DoubleBufferImpl.java (compact): Likewise.
	* java/nio/IntBufferImpl.java (compact): Likewise.
	* java/nio/LongBufferImpl.java (compact): Likewise.
	* java/nio/ShortBufferImpl.java (compact): Likewise.

2005-02-17  Jeroen Frijters  <jeroen@frijters.net>

	* java/nio/ByteBufferImpl.java,
	java/nio/CharBufferImpl.java,
	java/nio/DirectByteBufferImpl.java,
	java/nio/DoubleBufferImpl.java,
	java/nio/FloatBufferImpl.java,
	java/nio/IntBufferImpl.java,
	java/nio/LongBufferImpl.java,
	java/nio/MappedByteBufferImpl.java,
	java/nio/ShortBufferImpl.java
	(compact): Added explicit read-only check and invalidate mark.

2005-02-17  Michael Koch  <konqueror@gmx.de>

	* gnu/java/awt/peer/gtk/GThreadNativeMethodRunner.java,
	gnu/java/awt/peer/gtk/GdkFontPeer.java,
	gnu/java/awt/peer/gtk/GdkGlyphVector.java,
	gnu/java/awt/peer/gtk/GdkGraphics.java,
	gnu/java/awt/peer/gtk/GdkGraphics2D.java,
	gnu/java/awt/peer/gtk/GdkGraphicsConfiguration.java,
	gnu/java/awt/peer/gtk/GdkGraphicsEnvironment.java,
	gnu/java/awt/peer/gtk/GdkPixbufDecoder.java,
	gnu/java/awt/peer/gtk/GdkRobotPeer.java,
	gnu/java/awt/peer/gtk/GdkScreenGraphicsDevice.java,
	gnu/java/awt/peer/gtk/GdkTextLayout.java,
	gnu/java/awt/peer/gtk/GtkCheckboxMenuItemPeer.java,
	gnu/java/awt/peer/gtk/GtkChoicePeer.java,
	gnu/java/awt/peer/gtk/GtkClipboard.java,
	gnu/java/awt/peer/gtk/GtkComponentPeer.java,
	gnu/java/awt/peer/gtk/GtkFileDialogPeer.java,
	gnu/java/awt/peer/gtk/GtkFontPeer.java,
	gnu/java/awt/peer/gtk/GtkLabelPeer.java,
	gnu/java/awt/peer/gtk/GtkMenuBarPeer.java,
	gnu/java/awt/peer/gtk/GtkMenuItemPeer.java,
	gnu/java/awt/peer/gtk/GtkMenuPeer.java,
	gnu/java/awt/peer/gtk/GtkScrollPanePeer.java,
	gnu/java/awt/peer/gtk/GtkScrollbarPeer.java,
	gnu/java/awt/peer/gtk/GtkToolkit.java,
	gnu/java/awt/peer/gtk/GtkWindowPeer.java,
	java/applet/Applet.java,
	java/awt/AWTError.java,
	java/awt/AWTEvent.java,
	java/awt/AWTEventMulticaster.java,
	java/awt/AWTException.java,
	java/awt/AWTKeyStroke.java,
	java/awt/AWTPermission.java,
	java/awt/ActiveEvent.java,
	java/awt/Adjustable.java,
	java/awt/AlphaComposite.java,
	java/awt/AttributeValue.java,
	java/awt/BorderLayout.java,
	java/awt/BufferCapabilities.java,
	java/awt/Button.java,
	java/awt/Canvas.java,
	java/awt/CheckboxGroup.java,
	java/awt/CheckboxMenuItem.java,
	java/awt/Color.java,
	java/awt/ColorPaintContext.java,
	java/awt/Component.java,
	java/awt/ComponentOrientation.java,
	java/awt/Composite.java,
	java/awt/CompositeContext.java,
	java/awt/Container.java,
	java/awt/ContainerOrderFocusTraversalPolicy.java,
	java/awt/DefaultFocusTraversalPolicy.java,
	java/awt/Dialog.java,
	java/awt/Dimension.java,
	java/awt/DisplayMode.java,
	java/awt/EventQueue.java,
	java/awt/FileDialog.java,
	java/awt/FontFormatException.java,
	java/awt/Graphics.java,
	java/awt/Graphics2D.java,
	java/awt/GraphicsConfigTemplate.java,
	java/awt/GraphicsConfiguration.java,
	java/awt/GraphicsDevice.java,
	java/awt/GridBagLayout.java,
	java/awt/GridBagLayoutInfo.java,
	java/awt/GridLayout.java,
	java/awt/HeadlessException.java,
	java/awt/IllegalComponentStateException.java,
	java/awt/Image.java,
	java/awt/Insets.java,
	java/awt/ItemSelectable.java,
	java/awt/JobAttributes.java,
	java/awt/KeyEventDispatcher.java,
	java/awt/KeyEventPostProcessor.java,
	java/awt/KeyboardFocusManager.java,
	java/awt/Label.java,
	java/awt/LayoutManager.java,
	java/awt/MenuBar.java,
	java/awt/MenuComponent.java,
	java/awt/MenuContainer.java,
	java/awt/PageAttributes.java,
	java/awt/Paint.java,
	java/awt/PaintContext.java,
	java/awt/Panel.java,
	java/awt/Point.java,
	java/awt/Polygon.java,
	java/awt/PrintGraphics.java,
	java/awt/PrintJob.java,
	java/awt/Rectangle.java,
	java/awt/RenderingHints.java,
	java/awt/Shape.java,
	java/awt/Stroke.java,
	java/awt/SystemColor.java,
	java/awt/Toolkit.java,
	java/awt/Transparency.java,
	java/awt/Window.java,
	java/awt/color/CMMException.java,
	java/awt/color/ColorSpace.java,
	java/awt/color/ICC_ColorSpace.java,
	java/awt/color/ICC_Profile.java,
	java/awt/color/ProfileDataException.java,
	java/awt/datatransfer/FlavorTable.java,
	java/awt/datatransfer/MimeTypeParseException.java,
	java/awt/datatransfer/Transferable.java,
	java/awt/datatransfer/UnsupportedFlavorException.java,
	java/awt/dnd/Autoscroll.java,
	java/awt/dnd/DnDConstants.java,
	java/awt/dnd/DragGestureListener.java,
	java/awt/dnd/DragSourceAdapter.java,
	java/awt/dnd/DragSourceDropEvent.java,
	java/awt/dnd/DragSourceListener.java,
	java/awt/dnd/DragSourceMotionListener.java,
	java/awt/dnd/DropTargetAdapter.java,
	java/awt/dnd/DropTargetContext.java,
	java/awt/dnd/DropTargetListener.java,
	java/awt/dnd/InvalidDnDOperationException.java,
	java/awt/dnd/MouseDragGestureRecognizer.java,
	java/awt/dnd/peer/DropTargetContextPeer.java,
	java/awt/event/AWTEventListener.java,
	java/awt/event/AWTEventListenerProxy.java,
	java/awt/event/ActionEvent.java,
	java/awt/event/AdjustmentEvent.java,
	java/awt/event/AdjustmentListener.java,
	java/awt/event/ComponentAdapter.java,
	java/awt/event/ComponentEvent.java,
	java/awt/event/ComponentListener.java,
	java/awt/event/ContainerAdapter.java,
	java/awt/event/ContainerEvent.java,
	java/awt/event/ContainerListener.java,
	java/awt/event/FocusAdapter.java,
	java/awt/event/FocusEvent.java,
	java/awt/event/FocusListener.java,
	java/awt/event/InputEvent.java,
	java/awt/event/InputMethodEvent.java,
	java/awt/event/InputMethodListener.java,
	java/awt/event/InvocationEvent.java,
	java/awt/event/ItemEvent.java,
	java/awt/event/ItemListener.java,
	java/awt/event/KeyAdapter.java,
	java/awt/event/KeyEvent.java,
	java/awt/event/KeyListener.java,
	java/awt/event/MouseAdapter.java,
	java/awt/event/MouseEvent.java,
	java/awt/event/MouseListener.java,
	java/awt/event/MouseMotionAdapter.java,
	java/awt/event/MouseMotionListener.java,
	java/awt/event/MouseWheelEvent.java,
	java/awt/event/MouseWheelListener.java,
	java/awt/event/PaintEvent.java,
	java/awt/event/TextEvent.java,
	java/awt/event/TextListener.java,
	java/awt/event/WindowAdapter.java,
	java/awt/event/WindowEvent.java,
	java/awt/event/WindowFocusListener.java,
	java/awt/event/WindowListener.java,
	java/awt/event/WindowStateListener.java,
	java/awt/font/TextHitInfo.java,
	java/awt/geom/CubicCurve2D.java,
	java/awt/geom/Dimension2D.java,
	java/awt/geom/Ellipse2D.java,
	java/awt/geom/IllegalPathStateException.java,
	java/awt/geom/Line2D.java,
	java/awt/geom/NoninvertibleTransformException.java,
	java/awt/geom/PathIterator.java,
	java/awt/geom/Point2D.java,
	java/awt/geom/QuadCurve2D.java,
	java/awt/geom/RectangularShape.java,
	java/awt/geom/RoundRectangle2D.java,
	java/awt/im/InputContext.java,
	java/awt/im/InputMethodHighlight.java,
	java/awt/im/InputMethodRequests.java,
	java/awt/im/InputSubset.java,
	java/awt/im/spi/InputMethod.java,
	java/awt/im/spi/InputMethodDescriptor.java,
	java/awt/image/BandCombineOp.java,
	java/awt/image/BandedSampleModel.java,
	java/awt/image/ByteLookupTable.java,
	java/awt/image/ComponentSampleModel.java,
	java/awt/image/DataBuffer.java,
	java/awt/image/DataBufferByte.java,
	java/awt/image/DataBufferDouble.java,
	java/awt/image/DataBufferFloat.java,
	java/awt/image/DataBufferInt.java,
	java/awt/image/DataBufferShort.java,
	java/awt/image/DataBufferUShort.java,
	java/awt/image/ImagingOpException.java,
	java/awt/image/Kernel.java,
	java/awt/image/LookupTable.java,
	java/awt/image/MultiPixelPackedSampleModel.java,
	java/awt/image/PackedColorModel.java,
	java/awt/image/PixelInterleavedSampleModel.java,
	java/awt/image/RGBImageFilter.java,
	java/awt/image/Raster.java,
	java/awt/image/RasterFormatException.java,
	java/awt/image/SampleModel.java,
	java/awt/image/ShortLookupTable.java,
	java/awt/image/SinglePixelPackedSampleModel.java,
	java/awt/image/WritableRaster.java,
	java/awt/print/PrinterAbortException.java,
	java/awt/print/PrinterException.java,
	java/awt/print/PrinterIOException.java,
	java/beans/AppletInitializer.java,
	java/beans/ExceptionListener.java,
	java/beans/PropertyChangeEvent.java,
	java/beans/PropertyChangeListenerProxy.java,
	java/beans/PropertyChangeSupport.java,
	java/beans/PropertyDescriptor.java,
	java/beans/VetoableChangeListenerProxy.java,
	java/beans/VetoableChangeSupport.java,
	java/io/BufferedReader.java,
	java/io/ByteArrayInputStream.java,
	java/io/ByteArrayOutputStream.java,
	java/io/CharArrayReader.java,
	java/io/CharArrayWriter.java,
	java/io/CharConversionException.java,
	java/io/DataInput.java,
	java/io/DataInputStream.java,
	java/io/DataOutput.java,
	java/io/DataOutputStream.java,
	java/io/EOFException.java,
	java/io/FileInputStream.java,
	java/io/FileNotFoundException.java,
	java/io/FileOutputStream.java,
	java/io/FilenameFilter.java,
	java/io/FilterInputStream.java,
	java/io/FilterOutputStream.java,
	java/io/FilterReader.java,
	java/io/FilterWriter.java,
	java/io/IOException.java,
	java/io/InputStream.java,
	java/io/InterruptedIOException.java,
	java/io/LineNumberInputStream.java,
	java/io/LineNumberReader.java,
	java/io/ObjectInputStream.java,
	java/io/ObjectStreamException.java,
	java/io/OptionalDataException.java,
	java/io/OutputStream.java,
	java/io/OutputStreamWriter.java,
	java/io/PrintStream.java,
	java/io/PrintWriter.java,
	java/io/PushbackInputStream.java,
	java/io/PushbackReader.java,
	java/io/RandomAccessFile.java,
	java/io/Reader.java,
	java/io/SequenceInputStream.java,
	java/io/Serializable.java,
	java/io/StreamCorruptedException.java,
	java/io/StreamTokenizer.java,
	java/io/StringBufferInputStream.java,
	java/io/StringWriter.java,
	java/io/SyncFailedException.java,
	java/io/UTFDataFormatException.java,
	java/io/UnsupportedEncodingException.java,
	java/io/WriteAbortedException.java,
	java/io/Writer.java,
	java/lang/AbstractMethodError.java,
	java/lang/ArithmeticException.java,
	java/lang/ArrayIndexOutOfBoundsException.java,
	java/lang/ArrayStoreException.java,
	java/lang/AssertionError.java,
	java/lang/Boolean.java,
	java/lang/Byte.java,
	java/lang/Class.java,
	java/lang/ClassCastException.java,
	java/lang/ClassCircularityError.java,
	java/lang/ClassLoader.java,
	java/lang/ClassNotFoundException.java,
	java/lang/CloneNotSupportedException.java,
	java/lang/Cloneable.java,
	java/lang/Comparable.java,
	java/lang/Compiler.java,
	java/lang/Double.java,
	java/lang/Error.java,
	java/lang/Exception.java,
	java/lang/ExceptionInInitializerError.java,
	java/lang/Float.java,
	java/lang/IllegalAccessError.java,
	java/lang/IllegalAccessException.java,
	java/lang/IllegalArgumentException.java,
	java/lang/IllegalMonitorStateException.java,
	java/lang/IllegalStateException.java,
	java/lang/IllegalThreadStateException.java,
	java/lang/IncompatibleClassChangeError.java,
	java/lang/IndexOutOfBoundsException.java,
	java/lang/InheritableThreadLocal.java,
	java/lang/InstantiationError.java,
	java/lang/InstantiationException.java,
	java/lang/Integer.java,
	java/lang/InternalError.java,
	java/lang/InterruptedException.java,
	java/lang/LinkageError.java,
	java/lang/Long.java,
	java/lang/NegativeArraySizeException.java,
	java/lang/NoClassDefFoundError.java,
	java/lang/NoSuchFieldError.java,
	java/lang/NoSuchFieldException.java,
	java/lang/NoSuchMethodError.java,
	java/lang/NoSuchMethodException.java,
	java/lang/NullPointerException.java,
	java/lang/Number.java,
	java/lang/NumberFormatException.java,
	java/lang/OutOfMemoryError.java,
	java/lang/Process.java,
	java/lang/Runnable.java,
	java/lang/Runtime.java,
	java/lang/RuntimeException.java,
	java/lang/RuntimePermission.java,
	java/lang/SecurityException.java,
	java/lang/SecurityManager.java,
	java/lang/Short.java,
	java/lang/StackOverflowError.java,
	java/lang/StackTraceElement.java,
	java/lang/StringBuffer.java,
	java/lang/StringIndexOutOfBoundsException.java,
	java/lang/ThreadDeath.java,
	java/lang/ThreadGroup.java,
	java/lang/Throwable.java,
	java/lang/UnsatisfiedLinkError.java,
	java/lang/UnsupportedOperationException.java,
	java/lang/VerifyError.java,
	java/lang/VirtualMachineError.java,
	java/lang/reflect/AccessibleObject.java,
	java/lang/reflect/Array.java,
	java/lang/reflect/InvocationTargetException.java,
	java/lang/reflect/Member.java,
	java/lang/reflect/Modifier.java,
	java/lang/reflect/Proxy.java,
	java/lang/reflect/ReflectPermission.java,
	java/lang/reflect/UndeclaredThrowableException.java,
	java/math/BigInteger.java,
	java/net/NetworkInterface.java,
	java/nio/ByteBufferHelper.java,
	java/nio/ByteBufferImpl.java,
	java/nio/DirectByteBufferImpl.java,
	java/nio/DoubleBufferImpl.java,
	java/nio/FloatBufferImpl.java,
	java/nio/IntBufferImpl.java,
	java/nio/LongBufferImpl.java,
	java/nio/ShortBufferImpl.java,
	java/nio/channels/Channel.java,
	java/nio/channels/IllegalBlockingModeException.java,
	java/nio/charset/spi/CharsetProvider.java,
	java/security/AccessControlException.java,
	java/security/BasicPermission.java,
	java/security/DigestException.java,
	java/security/DigestInputStream.java,
	java/security/DigestOutputStream.java,
	java/security/GeneralSecurityException.java,
	java/security/Guard.java,
	java/security/GuardedObject.java,
	java/security/InvalidAlgorithmParameterException.java,
	java/security/InvalidKeyException.java,
	java/security/InvalidParameterException.java,
	java/security/Key.java,
	java/security/KeyException.java,
	java/security/KeyManagementException.java,
	java/security/KeyStoreException.java,
	java/security/MessageDigestSpi.java,
	java/security/NoSuchAlgorithmException.java,
	java/security/NoSuchProviderException.java,
	java/security/Permission.java,
	java/security/PermissionCollection.java,
	java/security/Permissions.java,
	java/security/Principal.java,
	java/security/PrivateKey.java,
	java/security/PrivilegedActionException.java,
	java/security/ProviderException.java,
	java/security/PublicKey.java,
	java/security/SecureRandom.java,
	java/security/SecureRandomSpi.java,
	java/security/SignatureException.java,
	java/security/SignatureSpi.java,
	java/security/SignedObject.java,
	java/security/Signer.java,
	java/security/UnrecoverableKeyException.java,
	java/security/UnresolvedPermission.java,
	java/security/acl/AclNotFoundException.java,
	java/security/acl/LastOwnerException.java,
	java/security/acl/NotOwnerException.java,
	java/security/cert/CertPath.java,
	java/security/cert/CertPathBuilderException.java,
	java/security/cert/CertPathValidatorException.java,
	java/security/cert/CertStoreException.java,
	java/text/BreakIterator.java,
	java/text/ChoiceFormat.java,
	java/text/CollationElementIterator.java,
	java/text/CollationKey.java,
	java/text/Collator.java,
	java/text/DateFormat.java,
	java/text/DateFormatSymbols.java,
	java/text/DecimalFormat.java,
	java/text/DecimalFormatSymbols.java,
	java/text/FieldPosition.java,
	java/text/Format.java,
	java/text/NumberFormat.java,
	java/text/ParseException.java,
	java/text/ParsePosition.java,
	java/text/StringCharacterIterator.java,
	java/util/AbstractCollection.java,
	java/util/AbstractList.java,
	java/util/AbstractMap.java,
	java/util/AbstractSequentialList.java,
	java/util/AbstractSet.java,
	java/util/ArrayList.java,
	java/util/Arrays.java,
	java/util/BitSet.java,
	java/util/Collection.java,
	java/util/Collections.java,
	java/util/Comparator.java,
	java/util/ConcurrentModificationException.java,
	java/util/Currency.java,
	java/util/Date.java,
	java/util/EmptyStackException.java,
	java/util/Enumeration.java,
	java/util/EventListener.java,
	java/util/EventListenerProxy.java,
	java/util/EventObject.java,
	java/util/HashMap.java,
	java/util/HashSet.java,
	java/util/Hashtable.java,
	java/util/IdentityHashMap.java,
	java/util/Iterator.java,
	java/util/LinkedHashSet.java,
	java/util/LinkedList.java,
	java/util/List.java,
	java/util/ListIterator.java,
	java/util/ListResourceBundle.java,
	java/util/Map.java,
	java/util/MissingResourceException.java,
	java/util/NoSuchElementException.java,
	java/util/Observable.java,
	java/util/Observer.java,
	java/util/Properties.java,
	java/util/PropertyPermissionCollection.java,
	java/util/RandomAccess.java,
	java/util/Set.java,
	java/util/SortedMap.java,
	java/util/SortedSet.java,
	java/util/Stack.java,
	java/util/StringTokenizer.java,
	java/util/TooManyListenersException.java,
	java/util/TreeMap.java,
	java/util/TreeSet.java,
	java/util/Vector.java,
	java/util/logging/FileHandler.java,
	java/util/logging/Level.java,
	java/util/prefs/BackingStoreException.java,
	java/util/prefs/InvalidPreferencesFormatException.java,
	java/util/prefs/Preferences.java,
	javax/accessibility/Accessible.java,
	javax/accessibility/AccessibleAction.java,
	javax/accessibility/AccessibleBundle.java,
	javax/accessibility/AccessibleComponent.java,
	javax/accessibility/AccessibleContext.java,
	javax/accessibility/AccessibleEditableText.java,
	javax/accessibility/AccessibleExtendedComponent.java,
	javax/accessibility/AccessibleExtendedTable.java,
	javax/accessibility/AccessibleHyperlink.java,
	javax/accessibility/AccessibleHypertext.java,
	javax/accessibility/AccessibleIcon.java,
	javax/accessibility/AccessibleKeyBinding.java,
	javax/accessibility/AccessibleRelation.java,
	javax/accessibility/AccessibleRelationSet.java,
	javax/accessibility/AccessibleResourceBundle.java,
	javax/accessibility/AccessibleRole.java,
	javax/accessibility/AccessibleSelection.java,
	javax/accessibility/AccessibleState.java,
	javax/accessibility/AccessibleStateSet.java,
	javax/accessibility/AccessibleTable.java,
	javax/accessibility/AccessibleTableModelChange.java,
	javax/accessibility/AccessibleText.java,
	javax/accessibility/AccessibleValue.java,
	javax/imageio/IIOException.java,
	javax/imageio/ImageIO.java,
	javax/imageio/spi/IIOServiceProvider.java,
	javax/imageio/spi/ImageInputStreamSpi.java,
	javax/imageio/spi/ImageOutputStreamSpi.java,
	javax/imageio/spi/ImageReaderWriterSpi.java,
	javax/imageio/spi/ImageTranscoderSpi.java,
	javax/imageio/spi/RegisterableService.java,
	javax/imageio/spi/ServiceRegistry.java,
	javax/imageio/stream/IIOByteBuffer.java,
	javax/imageio/stream/ImageInputStream.java,
	javax/imageio/stream/ImageOutputStream.java,
	javax/naming/Binding.java,
	javax/naming/CannotProceedException.java,
	javax/naming/CompositeName.java,
	javax/naming/CompoundName.java,
	javax/naming/LinkException.java,
	javax/naming/LinkRef.java,
	javax/naming/NameClassPair.java,
	javax/naming/Reference.java,
	javax/naming/ReferralException.java,
	javax/naming/directory/Attribute.java,
	javax/naming/directory/AttributeModificationException.java,
	javax/naming/directory/Attributes.java,
	javax/naming/directory/DirContext.java,
	javax/naming/directory/ModificationItem.java,
	javax/naming/directory/SearchControls.java,
	javax/naming/directory/SearchResult.java,
	javax/naming/event/EventContext.java,
	javax/naming/event/EventDirContext.java,
	javax/naming/event/NamespaceChangeListener.java,
	javax/naming/event/NamingExceptionEvent.java,
	javax/naming/event/NamingListener.java,
	javax/naming/event/ObjectChangeListener.java,
	javax/naming/ldap/Control.java,
	javax/naming/ldap/ExtendedResponse.java,
	javax/naming/ldap/HasControls.java,
	javax/naming/ldap/LdapContext.java,
	javax/naming/ldap/UnsolicitedNotification.java,
	javax/naming/ldap/UnsolicitedNotificationEvent.java,
	javax/naming/ldap/UnsolicitedNotificationListener.java,
	javax/naming/spi/DirectoryManager.java,
	javax/naming/spi/ResolveResult.java,
	javax/naming/spi/Resolver.java,
	javax/security/auth/callback/Callback.java,
	javax/security/auth/callback/CallbackHandler.java,
	javax/security/auth/callback/ChoiceCallback.java,
	javax/security/auth/callback/ConfirmationCallback.java,
	javax/security/auth/callback/LanguageCallback.java,
	javax/security/auth/callback/NameCallback.java,
	javax/security/auth/callback/PasswordCallback.java,
	javax/security/auth/callback/TextInputCallback.java,
	javax/security/auth/callback/TextOutputCallback.java,
	javax/security/auth/callback/UnsupportedCallbackException.java,
	javax/security/sasl/Sasl.java,
	javax/security/sasl/SaslServerFactory.java,
	javax/swing/DefaultBoundedRangeModel.java,
	javax/swing/JComponent.java,
	javax/swing/JList.java,
	javax/swing/JProgressBar.java,
	javax/swing/JRadioButton.java,
	javax/swing/JTextArea.java,
	javax/swing/JTextField.java,
	javax/swing/JToggleButton.java,
	javax/swing/JTree.java,
	javax/swing/SpinnerListModel.java,
	javax/swing/event/EventListenerList.java,
	javax/swing/text/JTextComponent.java,
	javax/swing/text/StringContent.java,
	javax/swing/text/Utilities.java,
	javax/swing/undo/UndoManager.java,
	javax/swing/undo/UndoableEditSupport.java,
	javax/transaction/HeuristicCommitException.java,
	javax/transaction/HeuristicMixedException.java,
	javax/transaction/HeuristicRollbackException.java,
	javax/transaction/InvalidTransactionException.java,
	javax/transaction/NotSupportedException.java,
	javax/transaction/RollbackException.java,
	javax/transaction/Status.java,
	javax/transaction/Synchronization.java,
	javax/transaction/SystemException.java,
	javax/transaction/Transaction.java,
	javax/transaction/TransactionManager.java,
	javax/transaction/TransactionRequiredException.java,
	javax/transaction/TransactionRolledbackException.java,
	javax/transaction/UserTransaction.java,
	javax/transaction/xa/XAException.java,
	javax/transaction/xa/XAResource.java,
	javax/transaction/xa/Xid.java,
	javax/xml/XMLConstants.java,
	javax/xml/datatype/DatatypeConfigurationException.java,
	javax/xml/datatype/DatatypeConstants.java,
	javax/xml/datatype/DatatypeFactory.java,
	javax/xml/datatype/Duration.java,
	javax/xml/datatype/XMLGregorianCalendar.java,
	javax/xml/namespace/NamespaceContext.java,
	javax/xml/namespace/QName.java,
	javax/xml/parsers/DocumentBuilder.java,
	javax/xml/parsers/DocumentBuilderFactory.java,
	javax/xml/parsers/FactoryConfigurationError.java,
	javax/xml/parsers/ParserConfigurationException.java,
	javax/xml/parsers/SAXParser.java,
	javax/xml/parsers/SAXParserFactory.java,
	javax/xml/transform/ErrorListener.java,
	javax/xml/transform/OutputKeys.java,
	javax/xml/transform/Result.java,
	javax/xml/transform/Source.java,
	javax/xml/transform/SourceLocator.java,
	javax/xml/transform/Templates.java,
	javax/xml/transform/Transformer.java,
	javax/xml/transform/TransformerConfigurationException.java,
	javax/xml/transform/TransformerException.java,
	javax/xml/transform/TransformerFactory.java,
	javax/xml/transform/TransformerFactoryConfigurationError.java,
	javax/xml/transform/URIResolver.java,
	javax/xml/transform/dom/DOMLocator.java,
	javax/xml/transform/dom/DOMResult.java,
	javax/xml/transform/dom/DOMSource.java,
	javax/xml/transform/sax/SAXResult.java,
	javax/xml/transform/sax/SAXSource.java,
	javax/xml/transform/sax/SAXTransformerFactory.java,
	javax/xml/transform/sax/TemplatesHandler.java,
	javax/xml/transform/sax/TransformerHandler.java,
	javax/xml/transform/stream/StreamResult.java,
	javax/xml/transform/stream/StreamSource.java,
	javax/xml/validation/Schema.java,
	javax/xml/validation/SchemaFactory.java,
	javax/xml/validation/TypeInfoProvider.java,
	javax/xml/validation/Validator.java,
	javax/xml/validation/ValidatorHandler.java,
	javax/xml/xpath/XPathConstants.java,
	javax/xml/xpath/XPathException.java,
	javax/xml/xpath/XPathExpression.java,
	javax/xml/xpath/XPathExpressionException.java,
	javax/xml/xpath/XPathFactory.java,
	javax/xml/xpath/XPathFactoryConfigurationException.java,
	javax/xml/xpath/XPathFunction.java,
	javax/xml/xpath/XPathFunctionException.java,
	javax/xml/xpath/XPathFunctionResolver.java:
	Fixed usage of @author tag, reworked import statements,
	removed CVS tags, changed the modifier order and fixed
	HTML usage in javadocs.

2005-02-16  Julian Scheid  <julian@sektor37.de>

	* gnu/java/nio/charset/UTF_8.java (decodeLoop): Set inPos to
	in.position().
	(encodeLoop): Likewise.

2005-02-16  Mark Wielaard  <mark@klomp.org>

	* Makefile.am (ordinary_java_source_files): Add new files
	gnu/java/security/ber/BER.java,
	gnu/java/security/ber/BEREncodingException.java,
	gnu/java/security/ber/BERReader.java,
	gnu/java/security/ber/BERValue.java,
	gnu/java/security/pkcs/PKCS7SignedData.java and
	gnu/java/security/pkcs/SignerInfo.java.
	* Makefile.in: Regenerated.

2005-02-16  Casey Marshall  <csm@gnu.org>

	* gnu/java/security/provider/GnuDSAPrivateKey.java
	(encodedKey): new field.
	(getFormat): return "PKCS#8".
	(getEncoded): implemented.
	(toString): check for 'null' values.
	* gnu/java/security/provider/GnuDSAPublicKey.java
	(encodedKey): new field.
	(getFormat): return "X.509".
	(getEncoded): implemented.
	(toString): check for 'null' values.

2005-02-16  Michael Koch  <konqueror@gmx.de>

	* java/util/jar/JarFile.java: Imports reworked.

2005-02-16  Mark Wielaard  <mark@klomp.org>

	* java/util/jar/JarFile.java (verify): Make package private.
	(signaturesRead): Likewise.
	(verified): Likewise.
	(entryCerts): Likewise.
	(DEBUG): Likewise.
	(debug): Likewise.
	(entries): Construct new JarEnumeration with reference to this.
	(JarEnumeration): Make static.
	(JarEnumeration.jarfile): New field.
	(JarEnumeration.nextElement): Use and synchronize on jarfile.
	Compare verified value to Boolean.TRUE or Boolean.False only
	when verify is true.
	(getEntry): Make synchronized. Compare value of verified to
	Boolean.TRUE.
	(getInputStream): Construct EntryInputStream with reference to this.
	(getManifest): Make synchronized.
	(EntryInputStream): Make static.
	(EntryInputStream.jarfile): New field.
	(EntryInputStream.EntryInputStream): Check if manifest exists,
	before getting attributes.
	(eof): Synchronize on jarfile.

2005-02-16  Casey Marshall  <csm@gnu.org>

	* java/util/jar/JarFile.java (verify): return if the jar is signed
	with an unsupported algorithm.

2005-02-16  Mark Wielaard  <mark@klomp.org>

	* java/util/jar/JarFile.java (EntryInputStream): Add actual
	InputStream as argument.
	(getInputStream): Construct a new EntryInputStream with the result of
	super.getInputStream(entry).

2005-02-16  Casey Marshall  <csm@gnu.org>

	Signed JAR file support.
	* java/net/URLClassLoader.java
	(JarURLResource.getCertificates): re-read jar entry to ensure
	certificates are picked up.
	(findClass): fill in class `signers' field, too.
	* java/util/jar/JarFile.java (META_INF): new constant.
	(PKCS7_DSA_SUFFIX): new constant.
	(PKCS7_RSA_SUFFIX): new constant.
	(DIGEST_KEY_SUFFIX): new constant.
	(SF_SUFFIX): new constant.
	(MD2_OID): new constant.
	(MD4_OID): new constant.
	(MD5_OID): new constant.
	(SHA1_OID): new constant.
	(DSA_ENCRYPTION_OID): new constant.
	(RSA_ENCRYPTION_OID): new constant.
	(signaturesRead): new field.
	(verified): new field.
	(entryCerts): new field.
	(DEBUG): new constant.
	(debug): new method.
	(JarEnumeration.nextElement): fill in entry certificates, read
	signatures if they haven't been read.
	(getEntry): likewise.
	(getInputStream): verify stream if it hasn't been verified yet.
	(readSignatures): new method.
	(verify): new method.
	(verifyHashes): new method.
	(readManifestEntry): new method.
	(EntryInputStream): new class.
	* gnu/java/io/Base64InputStream.java (decode): new class
	method.
	* gnu/java/security/der/DERReader.java don't make class
	final.
	(in): made protected.
	(encBuf): likewise.
	(readLength): likewise.
	* gnu/java/security/ber/BER.java,
	* gnu/java/security/ber/BEREncodingException.java,
	* gnu/java/security/ber/BERReader.java,
	* gnu/java/security/ber/BERValue.java,
	* gnu/java/security/pkcs/PKCS7SignedData.java,
	* gnu/java/security/pkcs/SignerInfo.java:
	new files.

2005-02-16  Tom Tromey  <tromey@redhat.com>

	* gnu/gcj/runtime/SharedLibHelper.java (findHelper): Delete
	copied file on exit.

2005-02-15  Mark Wielaard  <mark@klomp.org>

	* java/awt/BasicStroke.java (hashCode): Check for null dash.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* gnu/java/awt/peer/gtk/GtkArg.java,
	gnu/java/awt/peer/gtk/GtkArgList.java:
	Removed.

2005-02-15  Craig Black  <craig.black@aonix.com>

	* gnu/java/awt/peer/gtk/GtkCheckboxMenuItem.java
	(postMenuActionEvent): Implement to notify ItemListeners.
	* java/awt/CheckboxMenuItem.java
	(dispatchEventImpl): Update state on ItemEvent.
	* java/awt/MenuItem.java
	(processActionEvent): Retarget event source.

2005-02-15  Andrew John Hughes  <gnu_andrew@member.fsf.org>

	* gnu/java/awt/color/ClutProfileConverter.java,
	gnu/java/awt/peer/ClasspathTextLayoutPeer.java,
	gnu/java/awt/peer/gtk/GdkFontPeer.java,
	gnu/java/awt/peer/gtk/GdkGlyphVector.java,
	gnu/java/awt/peer/gtk/GdkGraphics2D.java,
	gnu/java/awt/peer/gtk/GdkGraphicsEnvironment.java,
	gnu/java/awt/peer/gtk/GdkPixbufDecoder.java,
	gnu/java/awt/peer/gtk/GdkRobotPeer.java,
	gnu/java/awt/peer/gtk/GdkTextLayout.java,
	gnu/java/awt/peer/gtk/GtkButtonPeer.java,
	gnu/java/awt/peer/gtk/GtkCheckboxPeer.java,
	gnu/java/awt/peer/gtk/GtkChoicePeer.java,
	gnu/java/awt/peer/gtk/GtkComponentPeer.java,
	gnu/java/awt/peer/gtk/GtkContainerPeer.java,
	gnu/java/awt/peer/gtk/GtkDialogPeer.java,
	gnu/java/awt/peer/gtk/GtkFileDialogPeer.java,
	gnu/java/awt/peer/gtk/GtkFontPeer.java,
	gnu/java/awt/peer/gtk/GtkFramePeer.java,
	gnu/java/awt/peer/gtk/GtkLabelPeer.java,
	gnu/java/awt/peer/gtk/GtkMenuComponentPeer.java,
	gnu/java/awt/peer/gtk/GtkMenuItemPeer.java,
	gnu/java/awt/peer/gtk/GtkScrollPanePeer.java,
	gnu/java/awt/peer/gtk/GtkTextComponentPeer.java,
	gnu/java/awt/peer/gtk/GtkToolkit.java,
	gnu/java/awt/peer/gtk/GtkWindowPeer.java,
	javax/swing/JPopupMenu.java,
	javax/swing/JSpinner.java,
	javax/swing/SortingFocusTraversalPolicy.java,
	javax/swing/SwingUtilities.java,
	javax/swing/plaf/basic/BasicComboBoxEditor.java,
	javax/swing/plaf/basic/BasicComboBoxRenderer.java,
	javax/swing/tree/DefaultMutableTreeNode.java:
	Removed unused imports and expanded starred
	imports.

2005-02-15  Mark Wielaard  <mark@klomp.org>

	* java/awt/AWTKeyStroke.java (getAWTKeyStroke(String)): Throw
	IllegalArgumentException when the given String is null.

	* javax/swing/KeyStroke.java (getKeyStroke(String)): Return null
	when given keystoke sequence cannot be parsed.

	* javax/swing/JRootPane.java (setJMenuBar): Remove current menubar
	if one is installed. Only install the given menubar is not null.

	* javax/swing/JViewport.java (getViewSize): Return an empty
	Dimension when the view isn't set or preferred component size when
	no viewSize is set.

	* javax/swing/ViewportLayout.java (preferredLayoutSize): Return an
	empty Dimension when there is no view set.
	(minimumLayoutSize): Likewise.
	(layoutContainer): Don't try to layout when there is no view.

2005-02-15  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* jawt.c: New file.
	* include/jawt.h: Likewise.
	* include/jawt_md.h: Likewise.
	* include/Makefile.am (tool_include__HEADERS): Add jawt.h and
	jawt_md.h files.
	* jni/classpath/classpath_jawt.h: Likewise.
	* jni/gtk-peer/gtk_jawt.c: Likewise.
	* Makefile.am: Build libjawt.so.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* gnu/java/awt/peer/gtk/GdkGraphics2D.java:
	Merged file header with classpath CVS head.
	* gnu/java/awt/peer/gtk/GdkPixbufDecoder.java:
	Merged code formatting with classpath CVS head.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GdkFontPeer.c:
	Removed debug code.
	(Java_gnu_java_awt_peer_gtk_GdkFontPeer_getGlyphVector):
	Handle special JNI strings with 2 '\0' at the end.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics2D.c:
	Merged file header with classpath CVS head.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkFileDialogPeer.c:
	Merged code formatting with classpath CVS head.

2005-02-15  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkFileDialogPeer.c (create):
	Use GTK's built-in file system backend.  Use GTK_RESPONSE_ACCEPT.
	(handle_response): Use GTK_RESPONSE_ACCEPT.

2005-02-15  Graydon Hoare  <graydon@redhat.com>

	* Makefile.am: Fix library build breakage.
	* Makefile.in: Regenerate.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/JTabbedPane.java
	(Page.setDisplayedMnemonicIndex): Handle empty menmonic.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/tree/DefaultMutableTreeNode.java:
	Reworked Javadocs all over.
	(getPathToRoot): Fixed direction of result array initialization.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics2D.c:
	 Fix includes for cairo 0.3.0 snappshot.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkListPeer.c:
	Merged file header from classpath CVS HEAD.

2005-02-15  Craig Black  <craig.black@aonix.com>

	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics.c
	(copyState): Pass a JNI global reference to signal handler.
	(realize_cb): Use and free JNI global reference.
	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkChoicePeer.c
	(create): Pass a JNI global reference to signal handler.
	(selection_changed): Match declaration.
	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkGenericPeer.c
	(dispose): Do not remove entries from state tables until after widget is
	destroyed.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* java/awt/Container.javai (paramString):
	If layoutMgr is null just return result of super.paramString().
	* java/awt/Scrollbar.java: Reformatted.
	* java/awt/im/InputContext.java (static):
	Removed redundant initializations.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/ImageIcon.java,
	javax/swing/UIManager.java,
	javax/swing/text/EditorKit.java,
	javax/swing/text/Segment.java:
	More whitespace cleanups.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* gnu/java/awt/EmbeddedWindow.java,
	gnu/java/awt/image/ImageDecoder.java,
	gnu/java/awt/peer/gtk/GtkFileDialogPeer.java,
	java/awt/DefaultKeyboardFocusManager.java,
	java/awt/Frame.java,
	java/awt/image/RGBImageFilter.java,
	javax/swing/AbstractButton.java,
	javax/swing/ActionMap.java,
	javax/swing/ComponentInputMap.java,
	javax/swing/DefaultDesktopManager.java,
	javax/swing/ImageIcon.java,
	javax/swing/InputMap.java,
	javax/swing/JButton.java,
	javax/swing/JCheckBox.java,
	javax/swing/JCheckBoxMenuItem.java,
	javax/swing/JEditorPane.java,
	javax/swing/JMenu.java,
	javax/swing/JMenuItem.java,
	javax/swing/JOptionPane.java,
	javax/swing/JRootPane.java,
	javax/swing/JTable.java,
	javax/swing/MenuSelectionManager.java,
	javax/swing/RepaintManager.java,
	javax/swing/ScrollPaneLayout.java,
	javax/swing/SortingFocusTraversalPolicy.java,
	javax/swing/UIManager.java,
	javax/swing/ViewportLayout.java,
	javax/swing/plaf/basic/BasicCheckBoxMenuItemUI.java,
	javax/swing/plaf/basic/BasicInternalFrameUI.java,
	javax/swing/plaf/basic/BasicLabelUI.java,
	javax/swing/plaf/basic/BasicListUI.java,
	javax/swing/plaf/basic/BasicMenuItemUI.java,
	javax/swing/plaf/basic/BasicMenuUI.java,
	javax/swing/plaf/basic/BasicOptionPaneUI.java,
	javax/swing/plaf/basic/BasicRadioButtonMenuItemUI.java,
	javax/swing/plaf/basic/BasicRootPaneUI.java,
	javax/swing/plaf/basic/BasicScrollPaneUI.java,
	javax/swing/plaf/basic/BasicSplitPaneDivider.java,
	javax/swing/plaf/basic/BasicTextUI.java,
	javax/swing/table/TableColumnModel.java,
	javax/swing/text/AbstractDocument.java,
	javax/swing/text/EditorKit.java,
	javax/swing/text/Position.java,
	javax/swing/text/Segment.java,
	javax/swing/text/StyledEditorKit.java,
	javax/swing/text/ViewFactory.java:
	Cleanup whitespace differences to classpath CVS HEAD.

2005-02-15  Graydon Hoare  <graydon@redhat.com>

	* gnu/java/awt/peer/gtk/GdkPixbufDecoder.java:
	(finalize): Call finish from here.
	(produce): Not from here.
	* Makefile.am (gtk_c_source_files):
	Remove jni/gtk-peer/gnu_java_awt_peer_gtk_GdkFontMetrics.c.
	* Makefile.in: Regenerate.
	* gnu/java/awt/peer/gtk/GdkGraphics2D.java
	(cairoSetFont):
	(cairoDrawGdkTextLayout):
	(cairoDrawString):
	(getPeerTextMetrics):
	(getPeerFontMetrics): Remove.
	(setFont): Don't call cairoSetFont.
	(cairoDrawGlyphVector): Accept font peer argument.
	(drawGlyphVector): Pass font peer to cairoDrawGlyphVector.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics2D.c
	(ensure_metrics_cairo):
	(gnu_java_awt_peer_gtk_GdkGraphics2D_cairoSetFont):
	(gnu_java_awt_peer_gtk_GdkGraphics2D_cairoDrawString):
	(gnu_java_awt_peer_gtk_GdkGraphics2D_getPeerFontMetrics):
	(gnu_java_awt_peer_gtk_GdkGraphics2D_getPeerTextMetrics):
	(metrics_cairo):
	(metrics_surface): Remove.
	(gnu_java_awt_peer_gtk_GdkGraphics2D_cairoDrawGlyphVector):
	Pass and install font peer.

2005-02-15  Graydon Hoare  <graydon@redhat.com>

	* Makefile.am: Create "split library" structure.
	* Makefile.in: Regenerate.

2005-02-15  Graydon Hoare  <graydon@redhat.com>

	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEvents.c:
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c:
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextComponentPeer.c:
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c:
	Release GDK lock during upcalls.

2005-02-15  Graydon Hoare  <graydon@redhat.com>

	* jni/gtk-peer/gnu_java_awt_peer_gtk_GdkFontMetrics.c: Remove.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GdkFontPeer.c
	(Java_gnu_java_awt_peer_gtk_GdkFontPeer_getGlyphVector):
	(Java_gnu_java_awt_peer_gtk_GdkFontPeer_getFontMetrics):
	(Java_gnu_java_awt_peer_gtk_GdkFontPeer_getTextMetrics): New methods.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGlyphVector.c: Remove.
	* gnu/java/awt/peer/gtk/GdkFontPeer.java
	(getGlyphVector):
	(getFontMetrics):
	(getTextMetrics): New native methods.
	* gnu/java/awt/peer/gtk/GdkFontMetrics.java: Remove native parts.
	* gnu/java/awt/peer/gtk/GdkGlyphVector.java: Likewise.
	* Makefile.am: Remove native entries for GdkFontMetrics, GdkGlyphVector.
	* Makefile.in: Regenerate.

2005-02-15  Andrew John Hughes  <gnu_andrew@member.fsf.org>

	* javax/swing/SwingUtilities.java:
	(getAccessibleAt(java.awt.Component, java.awt.Point)):
	Implemented and documented.
	(getAccessibleChild(java.awt.Component, int)): Likewise.
	(getAccessibleChildrenCount(java.awt.Component)): Likewise.
	(getAccessibleIndexInParent(java.awt.Component)): Likewise.
	(getAccessibleStateSet(java.awt.Component)): Likewise.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/SwingUtilities.java
	(getFontMetrics): Removed.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* java/awt/Container.java
	(paramString): Implemented.
	* javax/swing/AbstractButton.java
	(paramString): Implemented.
	* javax/swing/JComponent.java
	(paramString): Implemented.
	* javax/swing/JMenu.java
	(paramString): Implemented.
	* javax/swing/JMenuBar.java
	(paramString): Implemented.
	* javax/swing/JMenuItem.java
	(paramString): Implemented.
	* javax/swing/JPopupMenu.java
	(paramString): Implemented.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/JMenu.java
	(uiClassID): Removed.
	(JMenu): Set invoker on popup menu.
	(getUIClassID): Return id directly.
	(getItemCount): Simply return getMenuComponentCount().
	Fixed javadoc.
	(isTopLevelMenu): Simplified.
	* javax/swing/JMenuItem.java
	(uiClassID): Removed.
	(getUIClassID): Return id directly.
	* javax/swing/JPopupMenu.java
	(uiClassID): Removed.
	(JPopupMenu): Always initialize correctly.
	(getSubElements): Only return components implementing MenuElement
	interface.
	(HeavyWeightPopup.hide): Removed.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* java/awt/image/ReplicateScaleFilter.java
	(replicatePixels): Made private.
	* javax/swing/colorchooser/DefaultRGBChooserPanel.java
	(DefaultRGBChooserPanel): Made package private.
	* javax/swing/colorchooser/DefaultSwatchChooserPanel.java
	(RecentSwatchPanel): Likewise.
	* javax/swing/event/MouseInputAdapter.java: Reformatted.
	(MouseInputAdapter): Made abstract.
	* javax/swing/tree/DefaultMutableTreeNode.java
	(random): Removed.
	(growTree): Likewise.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* java/awt/dnd/DropTarget.java (addDropTargetListener):
	Clarified comments.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/JComponent.java (getComponentGraphics):
	Removed accidently commited code.

2005-02-15  Graydon Hoare  <graydon@redhat.com>

	* java/awt/dnd/DropTarget.java
	(addDropTargetListener): Despite documentation, do not throw.
	* javax/swing/JComponent.java: Set a default DropTarget.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/AbstractAction.java
	(ENABLED_PROPERTY): Removed.
	(setEnabled): Replaced constant with real string.
	* javax/swing/AbstractButton.java
	(createActionPropertyChangeListener.propertyChange): Likewise.
	* javax/swing/JComboBox.java
	(DEFAULT_MAXIMUM_ROW_COUNT): Made private.
	(EDITABLE_CHANGED_PROPERTY): Removed.
	(MAXIMUM_ROW_COUNT_CHANGED_PROPERTY):Likewise.
	(ENABLED_CHANGED_PROPERTY):Likewise.
	(RENDERER_CHANGED_PROPERTY):Likewise.
	(EDITOR_CHANGED_PROPERTY):Likewise.
	(MODEL_CHANGED_PROPERTY):Likewise.
	(uiClassID):Likewise.
	(getUIClassID): Replaced constant with real string.
	(setModel):Likewise.
	(setEditable):Likewise.
	(setMaximumRowCount):Likewise.
	(setRenderer):Likewise.
	(setEditor):Likewise.
	(setEnabled):Likewise.
	* javax/swing/JLabel.java
	(DISABLED_ICON_CHANGED_PROPERTY): Removed.
	(DISPLAYED_MNEMONIC_CHANGED_PROPERTY): Likewise.
	(DISPLAYED_MNEMONIC_INDEX_CHANGED_PROPERTY): Likewise.
	(HORIZONTAL_ALIGNMENT_CHANGED_PROPERTY): Likewise.
	(HORIZONTAL_TEXT_POSITION_CHANGED_PROPERTY): Likewise.
	(ICON_CHANGED_PROPERTY): Likewise.
	(ICON_TEXT_GAP_CHANGED_PROPERTY): Likewise.
	(LABEL_FOR_CHANGED_PROPERTY): Likewise.
	(TEXT_CHANGED_PROPERTY): Likewise.
	(VERTICAL_ALIGNMENT_CHANGED_PROPERTY): Likewise.
	(VERTICAL_TEXT_POSITION_CHANGED_PROPERTY): Likewise.
	(setText): Replaced constant with real string.
	(setIcon): Likewise.
	(setDisabledIcon): Likewise.
	(setDisplayedMnemonic): Likewise.
	(setIconTextGap): Likewise.
	(setVerticalAlignment): Likewise.
	(setHorizontalAlignment): Likewise.
	(setVerticalTextPosition): Likewise.
	(setHorizontalTextPosition): Likewise.
	(setLabelFor): Replaced constant with real string.
	Fire property change event after property got changed.
	* javax/swing/JList.java
	(CELL_RENDERER_PROPERTY_CHANGED): Likewise.
	(FIXED_CELL_HEIGHT_PROPERTY_CHANGED): Likewise.
	(FIXED_CELL_WIDTH_PROPERTY_CHANGED): Likewise.
	(LAYOUT_ORIENTATION_PROPERTY_CHANGED): Likewise.
	(MODEL_PROPERTY_CHANGED): Likewise.
	(PROTOTYPE_CELL_VALUE_PROPERTY_CHANGED): Likewise.
	(SELECTION_BACKGROUND_PROPERTY_CHANGED): Likewise.
	(SELECTION_FOREGROUND_PROPERTY_CHANGED): Likewise.
	(SELECTION_MODEL_PROPERTY_CHANGED): Likewise.
	(setFixedCellWidth): Reimplemented.
	(setFixedCellHeight): Exit if new value is identical.
	Replaced constant with real string.
	(setSelectionBackground): Likewise.
	(setSelectionForeground): Likewise.
	(setPrototypeCellValue): Likewise.
	(setCellRenderer): Replaced constant with real string.
	(setModel): Likewise.
	(setSelectionModel): Likewise.
	* javax/swing/JMenuBar.java
	(BORDER_PAINTED_CHANGED_PROPERTY): Removed.
	(MODEL_CHANGED_PROPERTY): Likewise.
	(MARGIN_CHANGED_PROPERTY): Likewise.
	(setBorderPainted): Reimplemented.
	(setMargin): Likewise.
	(setSelectionModel): Replaced constant with real string.
	* javax/swing/JPopupMenu.java
	(LABEL_CHANGED_PROPERTY): Removed.
	(VISIBLE_CHANGED_PROPERTY): Likewise.
	(borderPainted): Likewise.
	(setLabel): Replaced constant with real string.
	(setVisible): Exit if new value is identical.
	Replaced constant with real string.
	* javax/swing/JProgressBar.java
	(BORDER_PAINTED_CHANGED_PROPERTY): Removed.
	(ORIENTATION_CHANGED_PROPERTY): Likewise.
	(STRING_CHANGED_PROPERTY): Likewise.
	(STRING_PAINTED_CHANGED_PROPERTY): Likewise.
	(INDETERMINATE_CHANGED_PROPERTY): Likewise.
	(setOrientation): Replaced constant with real string.
	(setStringPainted): Likewise.
	(setString): Likewise.
	(setBorderPainted): Likewise.
	(setIndeterminate): Likewise.
	* javax/swing/JScrollBar.java
	(BLOCK_INCREMENT_CHANGED_PROPERTY): Removed.
	(MODEL_CHANGED_PROPERTY): Likewise.
	(ORIENTATION_CHANGED_PROPERTY): Likewise.
	(setOrientation): Replaced constant with real string.
	(setModel): Likewise.
	(setUnitIncrement): Likewise.
	(setBlockIncrement): Likewise.
	* javax/swing/JScrollPane.java
	(COLUMN_HEADER_CHANGED_PROPERTY): Removed.
	(COMPONENT_ORIENTATION_CHANGED_PROPERTY): Likewise.
	(HORIZONTAL_SCROLLBAR_CHANGED_PROPERTY): Likewise.
	(HORIZONTAL_SCROLLBAR_POLICY_CHANGED_PROPERTY): Likewise.
	(LAYOUT_CHANGED_PROPERTY): Likewise.
	(ROW_HEADER_CHANGED_PROPERTY): Likewise.
	(VERTICAL_SCROLLBAR_CHANGED_PROPERTY): Likewise.
	(VERTICAL_SCROLLBAR_POLICY_CHANGED_PROPERTY): Likewise.
	(VIEWPORT_CHANGED_PROPERTY): Likewise.
	(VIEWPORT_BORDER_CHANGED_PROPERTY): Likewise.
	(WHEEL_SCROLLING_ENABLED_CHANGED_PROPERTY): Likewise.
	(setComponentOrientation): Replaced constant with real string.
	(setColumnHeader): Likewise.
	(setHorizontalScrollBar): Likewise.
	(setHorizontalScrollBarPolicy): Likewise.
	(setRowHeader): Likewise.
	(setVerticalScrollBar): Likewise.
	(setVerticalScrollBarPolicy): Likewise.
	(setWheelScrollingEnabled): Likewise.
	(setViewport): Likewise.
	(setViewportBorder): Likewise.
	* javax/swing/JSlider.java
	(INVERTED_CHANGED_PROPERTY): Removed.
	(LABEL_TABLE_CHANGED_PROPERTY): Likewise.
	(MAJOR_TICK_SPACING_CHANGED_PROPERTY): Likewise.
	(MINOR_TICK_SPACING_CHANGED_PROPERTY): Likewise.
	(MODEL_CHANGED_PROPERTY): Likewise.
	(ORIENTATION_CHANGED_PROPERTY): Likewise.
	(PAINT_LABELS_CHANGED_PROPERTY): Likewise.
	(PAINT_TICKS_CHANGED_PROPERTY): Likewise.
	(setModel): Replaced constant with real string.
	(setOrientation): Likewise.
	(setLabelTable): Likewise.
	(setInverted): Likewise.
	(setMajorTickSpacing): Likewise.
	(setMinorTickSpacing): Likewise.
	(setPaintTicks): Likewise.
	(setPaintLabels): Likewise.
	* javax/swing/JTabbedPane.java
	(MODEL_CHANGED_PROPERTY): Removed.
	(TAB_PLACEMENT_CHANGED_PROPERTY): Likewise.
	(TAB_LAYOUT_POLICY_CHANGED_PROPERTY): Likewise.
	(setModel): Replaced constant with real string.
	(setTabPlacement): Likewise.
	(setTabLayoutPolicy): Likewise.
	* javax/swing/JToolBar.java
	(ORIENTATION_CHANGED_PROPERTY): Removed.
	(FLOATABLE_CHANGED_PROPERTY): Likewise.
	(BORDER_PAINTED_CHANGED_PROPERTY): Likewise.
	(MARGIN_CHANGED_PROPERTY): Likewise.
	(ROLLOVER_CHANGED_PROPERTY): Likewise.
	(setRollover): Replaced constant with real string.
	(setMargin): Likewise.
	(setBorderPainted): Likewise.
	(setFloatable): Likewise.
	(setOrientation): Likewise.
	* javax/swing/plaf/basic/BasicComboBoxUI.java
	(PropertyChangeHandler.propertyChange): Likewise.
	* javax/swing/plaf/basic/BasicComboPopup.java
	(PropertyChangeHandler.propertyChange): Likewise.
	* javax/swing/plaf/basic/BasicMenuBarUI.java
	(PropertyChangeHandler.propertyChange): Likewise.
	* javax/swing/plaf/basic/BasicProgressBarUI.java
	(PropertyChangeHandler.propertyChange): Likewise.
	* javax/swing/plaf/basic/BasicScrollBarUI.java
	(PropertyChangeHandler.propertyChange): Likewise.
	* javax/swing/plaf/basic/BasicSliderUI.java
	(PropertyChangeHandler.propertyChange): Likewise.
	* javax/swing/plaf/basic/BasicTabbedPaneUI.java
	(PropertyChangeHandler.propertyChange): Likewise.
	* javax/swing/plaf/basic/BasicToolBarUI.java
	(PropertyChangeHandler.propertyChange): Likewise.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/DefaultButtonModel.java
	(changeState): Made private.
	* javax/swing/DefaultDesktopManager.java
	(setWasIcon): Fixed second argument to be java.lang.Boolean.
	* javax/swing/JLayeredPane.java
	(layerToRange): Made private.
	(incrLayer): Likewise.
	(decrLayer): Likewise.
	* javax/swing/JTable.java
	(dragEnabled): Likewise.
	(preferredViewportSize): Renamed from preferredScrollableViewportSize.
	* javax/swing/KeyStroke.java
	(Keystroke): Made private.
	* javax/swing/TransferHandler.java
	(COMMAND_COPY): Likewise.
	(COMMAND_CUT): Likewise.
	(COMMAND_PASTE): Likewise.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/JTextField.java
	(postActionEvent): Use text in field when actionCommand is null.
	(getActionCommand): Removed.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/AbstractSet.java: Removed.
	* Makefile.am: Removed javax/swing/AbstractSet.java.
	* Makefile.in: Regenerated.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* java/awt/Window.java
	(AccessibleWindow.getAccessibleStateSet): Fixed method name.
	* java/awt/dnd/DnDConstants.java
	(DnDConstants): New private constructor.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/DefaultCellRenderer.java: Removed.
	* Makefile.am: Removed javax/swing/DefaultCellRenderer.java.
	* Makefile.in: Regenerated.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/AbstractButton.java
	(fireItemStateChanged): Made protected.
	(fireActionPerformed): Likewise.
	(fireStateChanged): Likewise.
	* javax/swing/DefaultButtonModel.java
	(fireItemStateChanged): Likewise.
	(fireActionPerformed): Likewise.
	(fireStateChanged): Likewise.
	* javax/swing/JApplet.java
	(JApplet): Removed.
	(frameInit): Likewise.
	(setRootPane): Made protected.
	(createRootPane): Likewise.
	* javax/swing/JComponent.java
	(getClientProperty): Likewise.
	(putClientProperty): Likewise.
	* javax/swing/JEditorPane.java
	(getContentType): Likewise.
	(setContentType): Likewise.
	* javax/swing/JFrame.java
	(setRootPane): Likewise.
	(createRootPane): Likewise.
	* javax/swing/JInternalFrame.java
	(getFocusCycleRootAncestor): Made final. Added @since tag.
	(isFocusCycleRoot): Likewise.
	(getWarningString): Made final.
	* javax/swing/JScrollBar.java
	(changeListener): Removed.
	(changeEvent): Likewise.
	(createChangeListener): Likewise.
	(fireStateChanged): Likewise.
	(addChangeListener): Likewise.
	(removeChangeListener): Likewise.
	(getChangeListeners): Likewise.
	* javax/swing/JScrollPane.java
	(createViewport): Made protected.
	* javax/swing/JViewport.java
	(addImpl): Likewise.
	(setBorder): New method.
	* javax/swing/JWindow.java
	(setRootPane): Made protected.
	(createRootPane): Likewise.
	* javax/swing/plaf/basic/BasicButtonUI.java
	(installListeners): Likewise.
	(uninstallListeners): Likewise.
	* javax/swing/plaf/basic/BasicProgressBarUI.java
	(incrementAnimationIndex): Likewise.
	* javax/swing/plaf/basic/BasicTabbedPaneUI.java
	(createLayoutManager): Likewise.
	* javax/swing/table/DefaultTableCellRenderer.java
	(firePropertyChange): Likewise.
	* javax/swing/table/JTableHeader.java
	(AccessibleJTableHeaderEntry.AccessibleJTableHeaderEntry):
	New constructor.
	* javax/swing/text/PlainDocument.java
	(reindex): Made private.
	* javax/swing/text/PlainView.java
	(drawLine): Made protected.
	(getTabSize): Likewise.
	* javax/swing/text/View.java
	(setSize): Removed.
	(preferenceChanged): New method.
	(getBreakWeight): Likewise.
	(breakView): Likewise.
	(getViewIndex): Likewise.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/JScrollPane.java
	(ScrollBar): Made class protected.
	* javax/swing/JSpinner.java
	(JSpinner): Added @since tag.
	(listenerList): Removed.
	* javax/swing/JTable.java
	(setValueAt): New method.
	(getColumn): Likewise.
	* javax/swing/JWindow.java
	(rootPaneCheckingEnabled): Renamed from checking.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/plaf/basic/BasicTextUI.java
	(RootView.modelToView): Made it public and return a java.awt.Shape.
	Handle null subview.
	(uninstall): Set textComponent to null when its not possible used
	anymore.
	* javax/swing/text/View.java
	(setParent): Use better argument name.
	(getContainer): Get parent via getParent().
	(getViewFactory): Likewise.
	(getAttributes): Get element via getElement().
	(getStartOffset): Likewise.
	(getEndOffset): Likewise.
	(getResizeWeight): New method.
	(getMaximumSpan): Likewise.
	(getMinimumSpan): Likewise.
	(setSize): Likewise.
	(getGraphics): Likewise.

2005-02-15  Andrew John Hughes  <gnu_andrew@member.fsf.org>

	* java/awt/Checkbox.java:
	(AccessibleAWTCheckbox()): Added public constructor
	to call superclass.
	* java/awt/Choice.java:
	(AccessibleAWTChoice): Added class documentation.
	(AccessibleAWTChoice()): Added public constructor
	to call superclass.
	(AccessibleAWTChoice.getAccessibleAction()): Documented.
	(AccessibleAWTChoice.getAccessibleRole()): Documented,
	and changed role to COMBO_BOX.
	(AccessibleAWTChoice.getAccessibleActionCount()): Documented.
	(AccessibleAWTChoice.getAccessibleActionDescription(int)): Documented.
	(AccessibleAWTChoice.doAccessibleAction(int)): Documented.

2005-02-15  Graydon Hoare  <graydon@redhat.com>
	    Michael Koch  <konqueror@gmx.de>

	* javax/swing/LayoutFocusTraversalPolicy.java,
	javax/swing/SortingFocusTraversalPolicy.java:
	New classes.
	* Makefile.am: Added new classes.
	* Makefike.in: Regenerated.


2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/DebugGraphics.java: Mostly implemented.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/SwingUtilities.java
	(findFocusOwner): New method.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/text/DefaultEditorKit.java
	(read): Added '\n' after each line.
	* javax/swing/text/PlainView.java
	(modelToView): Update metrics.
	(drawLine): Use offsets from element.
	(paint): Update metrics. Draw all lines.

2005-02-15  Andrew John Hughes  <gnu_andrew@member.fsf.org>

	* java/awt/Checkbox.java:
	(AccessibleAWTCheckbox): Added class documentation
	* java/awt/Scrollbar.java:
	(AccessibleAWTScrollBar): typo corrected and docs added
	(AccessibleAWTScrollBar.getAccessibleRole()): documented
	(AccessibleAWTScrollBar.getAccessibleStateSet()): likewise
	(AccessibleAWTScrollBar.getAccessibleValue()): likewise
	(AccessibleAWTScrollBar.getCurrentAccessibleValue()): likewise
	(AccessibleAWTScrollBar.setCurrentAccessibleValue(int)): likewise
	(AccessibleAWTScrollBar.getMinimumAccessibleValue()): likewise
	(AccessibleAWTScrollBar.getMaximumAccessibleValue()): likewise
	(getAccessibleContext()): name of accessible class corrected

2005-02-15  Mark Wielaard  <mark@klomp.org>

	* java/awt/BasicStroke.java (hashCode): Implement.
	(equals): Document.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* java/awt/print/PrinterJob.java
	(pageDialog): Throws java.awt.HeadlessException.
	(printDialog): Likewise.

2005-02-15  Mark Wielaard  <mark@klomp.org>

	* jni/gtk-peer/gtkpeer.h (gdk_env): Fix prototype.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/JTable.java
	(getValueAt): New method.
	* javax/swing/table/JTableHeader.java
	(columnAtPoint): New method.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/JTextField.java
	(actions): New field.
	(static): Initalize actions field.
	(getActions): New method.

2005-02-15  Andrew John Hughes  <gnu_andrew@member.fsf.org>

	* java/awt/Checkbox.java:
	(AccessibleAWTCheckbox): name capitalization corrected
	and serialization UID added.
	(AccessibleAWTCheckbox.itemStateChanged(java.awt.event.ItemEvent)):
	documented.
	(AccessibleAWTCheckbox.getAccessibleAction()): likewise
	(AccessibleAWTCheckbox.getAccessibleValue()): likewise
	(AccessibleAWTCheckbox.getAccessibleActionCount()): likewise
	(AccessibleAWTCheckbox.getAccessibleActionDescription(int)): likewise
	(AccessibleAWTCheckbox.doAccessibleAction(int)): likewise
	(AccessibleAWTCheckbox.getCurrentAccessibleValue()): likewise
	(AccessibleAWTCheckbox.setCurrentAccessibleValue(int)): likewise
	(AccessibleAWTCheckbox.getMinimumAccessibleValue()): likewise
	(AccessibleAWTCheckbox.getMaximumAccessibleValue()): likewise
	(AccessibleAWTCheckbox.getAccessibleRole()): likewise
	(AccessibleAWTCheckbox.getAccessibleStateSet()): implemented and
	documented
	(getAccessibleContext()): name of accessible class corrected

2005-02-15  Sven de Marothy  <sven@physto.se>

	* java/awt/geom/doc-files/Area-1.png,
	java/awt/geom/doc-files/Ellipse-1.png,
	java/awt/geom/doc-files/GeneralPath-1.png:
	New files.

2005-02-15  Graydon Hoare  <graydon@redhat.com>

	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkToolkit.c (env_union):
	Use union to avoid type-punning warning.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/DefaultListSelectionModel.java
	(clone): New method.

2005-02-15  Mark Wielaard  <mark@klomp.org>

	Reported by Martin Platter <motse@complang.tuwien.ac.at>
	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkFileDialogPeer.c
	(Java_gnu_java_awt_peer_gtk_GtkFileDialogPeer_nativeSetFile):
	Correct method signature of gtkSetFilename.

2005-02-15  Arnaud Vandyck  <avdyk@gnu.org>

	* javax/swing/text/StringContent.java: New file.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* Makefile.am: Added javax/swing/text/StringContent.java.
	* Makefile.in: Regenerated.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* gnu/java/awt/ClasspathToolkit.java:
	Import statements reworked.
	(imageCache): Made it of type java.util.HashMap.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/imageio/stream/MemoryCacheImageInputStream.java:
	Reworked import statements.

2005-02-15  Graydon Hoare  <graydon@redhat.com>

	* jni/gtk-peer/gnu_java_awt_peer_gtk_GThreadNativeMethodRunner.c:
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGlyphVector.c:
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics.c:
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics2D.c:
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkButtonPeer.c:
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxPeer.c:
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkChoicePeer.c:
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkClipboard.c:
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c:
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEvents.c:
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkFileDialogPeer.c:
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkListPeer.c:
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuItemPeer.c:
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollBarPeer.c:
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextComponentPeer.c:
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c:
	Rewrite uses of extern variable to be function calls.
	* jni/gtk-peer/gtkpeer.h (gdk_env): Change declaration to
	function, from extern variable.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkToolkit.c
	(gdk_env): Remove variable, add new function.
	(java_vm): Add new variable.
	(Java_gnu_java_awt_peer_gtk_GtkToolkit_gtkInit): Initialize
	java_vm rather than old gdk_env variable.

2005-02-15 David Gilbert <david.gilbert@object-refinery.com>

	* javax/swing/DefaultListModel.java
	(add): fire correct event,
	(addElement): corrected interval indices in event,
	(clear): corrected upper bound for interval, only fire event if
	list is not empty,
	(setSize): fire appropriate event.

2005-02-15  Graydon Hoare  <graydon@redhat.com>

	* gnu/awt/xlib/XEventLoop.java: Add non-blocking event mode.
	* gnu/awt/xlib/XToolkit.java: Likewise.
	* gnu/gcj/xlib/XAnyEvent.java: Likewise.
	* gnu/gcj/xlib/natXAnyEvent.cc: Likewise.
	* gnu/java/awt/ClasspathToolkit.java: Likewise.
	* gnu/java/awt/peer/gtk/GtkToolkit.java: Likewise.
	* java/awt/EventQueue.java (getNextEvent):
	Adjust event loop to switch to native mode after 100ms.
	* javax/swing/Timer.java (drainEvents): Reuse Runnable.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkGenericPeer.c
	(Java_gnu_java_awt_peer_gtk_GtkGenericPeer_dispose):
	Wake up event thread.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkToolkit.c
	(Java_gnu_java_awt_peer_gtk_GtkToolkit_iterateNativeQueue):
	Adjust event loop to switch to java mode after 100ms.

2005-02-15  Graydon Hoare  <graydon@redhat.com>

	* jni.cc (_Jv_JNI_RegisterNatives): Re-add sync, which was
	accidentally removed in last change.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMainThread.c,
	gnu/java/awt/peer/gtk/GtkMainThread.java: Removed.

2005-02-15  Graydon Hoare  <graydon@redhat.com>

	* include/jni.h (_Jv_JNIEnv::bottom_locals): New field.
	* include/jvm.h (_Jv_FreeJNIEnv): Declare.
	* java/lang/natThread.cc (finalize_native): Call _Jv_FreeJNIEnv.
	* jni.cc: Reuse bottom frame between calls, avoid clearing
	frame when no local references are made.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/UIDefaults.java (UIDefaults):
	Fixed typo in javadoc (Thanks to Thomas Zander for reporting)
	Fixed HTML entity and removed a redundant comma.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/text/DefaultEditorKit.java
	(deinstall): Removed.
	(install): Likewise.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/UIDefaults.java (put): Handle value of null.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* java/awt/Robot.java,
	java/awt/Scrollbar.java,
	java/awt/print/PrinterJob.java,
	javax/swing/JTable.java,
	javax/swing/text/AbstractDocument.java:
	Reworked import statements.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/JEditorPane.java
	(read): Implemented.
	(write): Likewise.
	* javax/swing/text/DefaultEditorKit.java
	(page): Renamed from page_url. Made private.
	(editorKit): Renamed from kit. Made private.
	(ctype): Removed.
	(JEditorPane): All constructors reimplemented.
	(getContentType): Use content type from editor kit.
	(getEditorKit): Return editorKit.
	(getEditorKitForContentType):Likewise.
	(getPage): Return page.
	(setContentType): Reimplemented.
	(setEditorKit): Likewise.
	(setEditorKitForContentType): Removed wrong implementation.
	(setPage): Implemented.

2005-02-15  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkFramePeer.c
	(nativeSetIconImageFromData): Re-add native implementation.

2005-02-15  David Gilbert  <david.gilbert@object-refinery.com>

	* javax/swing/table/DefaultTableModel.java
	(DefaultTableModel()): Added Javadocs.
	(DefaultTableModel(int, int)): Fixed implementation.
	(DefaultTableModel(Vector, int)): Throw IllegalArgumentException
	for negative rowCount.
	(DefaultTableModel(Object[], int)): Added Javadocs.
	(DefaultTableModel(Vector, Vector)): Likewise.
	(DefaultTableModel(Object[][], Object[])): Likewise.
	(getDataVector): Likewise.
	(setDataVector(Vector, Vector)): Likewise.
	(setDataVector(Object[][], Object[])): Likewise.
	(newDataAvailable): Likewise.
	(newRowsAdded): Likewise.
	(rowsRemoved): Likewise.
	(setColumnIdentifiers(Vector)): Allow for null argument.
	(setColumnIdentifiers(Object[])): Added Javadocs.
	(setNumRows): Likewise.
	(setRowCount): Adds new rows if necessary, and sends more specific
	TableModelEvent.
	(setColumnCount): Allow for null columnIdentifiers.
	(addColumn(Object)): Added Javadocs.
	(addColumn(Object, Vector)): Handle null columnData.
	(addColumn(Object, Object[])): Handle columnData with more or less
	entries than rows in the table.
	(addRow(Vector)): Fire appropriate event.
	(addRow(Object[])): Added Javadocs.
	(insertRow(int, Vector)): Fire appropriate event.
	(insertRow(int, Object[])): Added Javadocs.
	(moveRow): Reimplemented.
	(removeRow(int)): Fire appropriate event.
	(getColumnCount): Allow for null columnIdentifiers.
	(getColumnName): Now returns empty string when column index is too
	large.
	(isCellEditable): Added Javadocs.
	(getValueAt): Likewise.
	(setValueAt): Fire more specific event.
	(convertToVector): Added Javadocs.
	* javax/swing/table/TableModel.java
	Added Javadocs.

2005-02-15  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* libgcj.spec.in (lib): Add -l-javax-imageio.

2005-02-15  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* gnu/java/awt/peer/gtk/GtkComponentPeer.java: Replace direct
	references to event queue q with method call q().
	* gnu/java/awt/peer/gtk/GtkDialogPeer.java: Likewise.
	* gnu/java/awt/peer/gtk/GtkFramePeer.java: Likewise.
	* gnu/java/awt/peer/gtk/GtkScrollbarPeer.java: Likewise.
	* gnu/java/awt/peer/gtk/GtkTextComponentPeer.java: Likewise.
	* gnu/java/awt/peer/gtk/GtkWindowPeer.java: Likewise.
	* gnu/java/awt/peer/gtk/GtkGenericPeer.java: Likewise.
	(q): New method.

2005-02-15  Graydon Hoare  <graydon@redhat.com>

	* gnu/java/awt/ClasspathToolkit.java
	(registerImageIOSpis): New method.
	* gnu/java/awt/image/ImageDecoder.java
	(imageDecoder): New constructor using InputStream
	(startProduction): Handle existing InputStream.
	* gnu/java/awt/peer/gtk/GdkGraphics2D.java
	(findSimpleIntegerArray): Make public and static.
	(updateBufferedImage): Set each pixel, in a loop.
	* gnu/java/awt/peer/gtk/GdkPixbufDecoder.java:
	Implement ImageIO SPI classes.
	(createBufferedImage): Rewrite in terms of SPI classes.
	* gnu/java/awt/peer/gtk/GtkToolkit.java
	(registerImageIOSpis): New method.
	* java/lang/reflect/natMethod.cc
	(_Jv_CallAnyMethodA): Borrow a patch from aph, applied to trunk,
	which lets JNI call interface methods properly.
	* javax/imageio/ImageIO.java
	(WriterFormatFilter.filter): Fix copy-and-paste typos.
	(WriterMIMETypeFilter.filter): Likewise.
	(ImageReaderIterator): Pass extension argument through to SPI.
	(getReadersByFilter): Likewise.
	(getWritersByFilter): Likewise.
	(getImageReadersByFormatName): Likewise.
	(getImageReadersByMIMEType): Likewise.
	(getImageReadersBySuffix): Likewise.
	(getImageWritersByFormatName): Likewise.
	(getImageWritersByMIMEType): Likewise.
	(getImageWritersBySuffix): Likewise.
	(read): Implement.
	(write): Implement.
	* javax/imageio/ImageReader.java
	(progressListeners): Initialize.
	(setInput): Implement.
	* javax/imageio/ImageWriter.java
	(progressListeners): Initialize.
	(warningListeners): Likewise.
	(warningLocales): Likewise.
	(setOutput): Test "isInstance" rather than class equality.
	* javax/imageio/spi/IIORegistry.java
	(static): Add reader and writer SPIs.
	(IIORegistry): Call ClasspathToolkit.registerImageIOSpis.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GdkPixbufDecoder.c
	(query_formats): New function.
	(save_to_stream): Likewise.
	(Java_gnu_java_awt_peer_gtk_GdkPixbufDecoder_streamImage): Likewise.

2005-02-15  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* jni/gtk-peer/gnu_java_awt_peer_gtk_GdkRobotPeer.c (mouseWheel):
	Call XFlush.
	(keyPress): Likewise.
	(keyRelease): Likewise.

2005-02-15  Olga Rodimina  <rodimina@redhat.com>

	* javax/swing/JTable.java
	(columnAtPoint): New Method. Implemented.
	(rowAtPoint): Likewise.
	(countSelections): Fixed few small count errors.
	(getSelections): Likewise.
	(setSelectionMode): Set selection mode for column
	selection model in addition to row selection model.
	* javax/swing/plaf/basic/BasicTableUI.java:
	(getRowForPoint): Removed. Replaced by
	JTable.rowAtPoint().
	(getColForPoint): Removed. Replaced by
	JTable.columnAtPoint().
	(updateSelection): Updated to call JTable.columnAtPoint
	and JTable.rowAtPoint.
	* javax/swing/table/DefaultTableColumnModel.java:
	(getSelectedColumns): Implemented.
	(getSelectedColumnCount): Implemented.

2005-02-15  Graydon Hoare  <graydon@redhat.com>

	* Makefile.am
	(jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMainThread.c)
	(gnu/java/awt/peer/gtk/GtkMainThread.java) : Remove.
	* Makefile.in: Regenerate.
	* gnu/awt/xlib/XEventLoop.java: Fix to match thread model.
	* gnu/awt/xlib/XFramePeer.java: Likewise.
	* gnu/awt/xlib/XToolkit.java: Likewise.
	* gnu/gcj/xlib/XAnyEvent.java: Likewise.
	* gnu/gcj/xlib/natXAnyEvent.cc: Likewise.
	* gnu/java/awt/ClasspathToolkit.java
	(nativeQueueEmpty)
	(wakeNativeQueue)
	(iterateNativeQueue): New methods.
	* gnu/java/awt/peer/gtk/GtkMainThread.java: Remove.
	* gnu/java/awt/peer/gtk/GtkToolkit.java
	(gtkInit): Absorb from defunct GtkMainThread class.
	(static): Run gtkInit in static startup block.
	(GtkToolkit): Remove construction of GtkMainThread and queue.
	(getSystemEventQueueImpl): Construct queue when requested.
	(nativeQueueEmpty)
	(wakeNativeQueue)
	(iterateNativeQueue): New methods.
	* java/awt/Component.java (removeNotify): Remove race.
	* java/awt/EventDispatchThread.java
	(EventDispatchThread): Don't start on construction.
	(run): Remove isInterrupted check.
	* java/awt/EventQueue.java (shutdown): New flag.
	(isShutdown): New method checking J2SE shutdown condition.
	(setShutdown): New method.
	(getNextEvent): Restructure to use ClasspathToolkit.
	(postEvent): Activate new thread on posting, wake thread on
	post of possible shutdown condition event.
	* java/awt/Frame.java
	(Frame): Call noteFrame in all constructors.
	(fireDummyEvent): New helper method.
	(addNotify): Fire a dummy event to wake up queue.
	(removeNotify): Fire a dummy event to wake up queue.
	(noteFrame): New method.
	(weakFrames): New static field.
	(getFrames): Implement.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMainThread.c:
	Remove.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkToolkit.c:
	Move everything from GtkMainThread into this file
	(Java_gnu_java_awt_peer_gtk_GtkToolkit_iterateNativeQueue)
	(Java_gnu_java_awt_peer_gtk_GtkToolkit_wakeNativeQueue)
	(Java_gnu_java_awt_peer_gtk_GtkToolkit_nativeQueueEmpty):
	New functions to implement single-threaded queue semantics.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/plaf/metal/MetalLookAndFeel.java
	(getControlTextFont): New method.
	(getMenuTextFont): Likewise.
	(getSubTextFont): Likewise.
	(getSystemTextFont): Likewise.
	(getUserTextFont): Likewise.
	(getWindowTitleFont): Likewise.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/text/AbstractDocument.java
	(documentFilter): New field.
	(getDocumentFilter): New method.
	(setDocumentFilter): Likewise.
	(dump): Likewise.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/JTree.java
	(DynamicUtilTreeNode.hasChildren): Clarify javadoc.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/text/AbstractDocument.java
	(AbstractElement.getLength): Fixed off-by-one error.
	(AbstractElement.children): Made abstract.
	(AbstractElement.getAllowsChildren): Likewise.
	(AbstractElement.getElement): Likewise.
	(AbstractElement.dumpElement): New private method.
	(AbstractElement.dump): New method.
	(BranchElememt.getName): Fixed implementation.
	(BranchElememt.toString): Likewise.
	(BranchElememt.getElement): Fixed arguments.
	(LeafElement.getName): Fixed implementation.
	(LeafElement.toString): Likewise.
	* javax/swing/text/GapContent.java
	(GapContent): Put default content into buffer.
	* javax/swing/text/PlainDocument.java
	(reindex): Use empty attribute sets instead of null.
	(createDefaultRoot): Reimplemented.
	(insertUpdate): Call super method.
	(removeUpdate): Likewise.
	(getParagraphElement): Implemented.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* gnu/java/awt/ClasspathToolkit.java
	(createRobot): Throws java.awt.AWTException.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GdkRobotPeer.c:
	Added '__attribute__((unused))' to all unused method arguments.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/DefaultBoundedRangeModel.java
	(fireValueChanged): Fixed off-by-one error.

2005-02-15  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* Makefile.am (gtk_c_source_files): Add GdkRobotPeer.c.
	(gtk_awt_peer_sources): Add GdkScreenGraphicsDevice.java and
	GdkRobotPeer.java.
	(lib_gnu_java_awt_peer_gtk_la_CFLAGS): Add X flags.
	(lib_gnu_java_awt_peer_gtk_la_LDFLAGS): Add XTest flags.
	* gnu/awt/xlib/XToolkit.java (createRobot): New method.
	* gnu/java/awt/ClasspathToolkit.java (createRobot): New method.
	* gnu/java/awt/peer/gtk/GdkGraphicsEnvironment.java
	(getDefaultScreenDevice): Implement.
	* gnu/java/awt/peer/gtk/GdkRobotPeer.java: New file.
	* gnu/java/awt/peer/gtk/GdkScreenGraphicsDevice.java: Likewise.
	* gnu/java/awt/peer/gtk/GtkToolkit.java (createRobot): New method.
	* java/awt/Robot.java: Implement.
	* java/awt/peer/RobotPeer.java: Rename parameters.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GdkRobotPeer.c: New file.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c
	(awt_keycode_to_keysym): Make non-static.
	* jni/gtk-peer/gtkpeer.h (AWT_BUTTON1_MASK, AWT_BUTTON2_MASK,
	AWT_BUTTON3_MASK): Declare constants.
	(awt_keycode_to_keysym): Declare.

	* Makefile.am (AM_MAKEFLAGS): Set KEYS variable.
	* testsuite/libjava.mauve/mauve.exp (test_mauve): If KEYS exists
	and is non-empty pass its value to "make check".
	(test_mauve_sim): Likewise.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/imageio/IIOParam.java
	(setSourceBands): New method.
	(setSourceSubsampling): Likewise.
	* javax/imageio/ImageReadParam.java
	(setDestination): Likewise.
	(setDestinationBands): Likewise.
	(setSourceProgressivePasses): Likewise.
	* javax/imageio/metadata/IIOInvalidTreeException.java
	(serialVersionUID): New static field.
	* javax/imageio/metadata/IIOMetadataNode.java
	(IIOMetadataNode): Don't explicitely implement org.w3c.dom.Node.
	(parent): Dont initailize with default value explicitely.
	(Object): Likewise.
	(removeAttribute): Doesn't throws org.w3c.dom.DOMException.
	(removeAttributeNode): Likewise.
	(removeAttributeNS): Likewise.
	(setAttribute): Likewise.
	(setAttributeNode): Likewise.
	(setAttributeNodeNS): Likewise.
	(setAttributeNS): Likewise.
	(appendChild): Likewise.
	(getNodeValue): Likewise.
	(insertBefore): Likewise.
	(removeChild): Likewise.
	(replaceChild): Likewise.
	(setPrefix): Likewise.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/LookAndFeel.java
	(getDesktopPropertyValue): New method.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/JTree.java
	(hasChildren): New instance field.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/JComponent.java
	(getToolTipText): New method.
	(getTitledBorderText): Likewise.
	(getAccessibleKeyBinding): Likewise.
	(getVerifyInputWhenFocusTarget): Likewise.
	(setVerifyInputWhenFocusTarget): Likewise.
	(verifyInputWhenFocusTarget): New instance field.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/DefaultListSelectionModel.java
	(fireValueChanged): New method.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/DefaultBoundedRangeModel.java:
	Fixed javadocs all over.
	(fireStateChanged): Simplified.
	* javax/swing/BoundedRangeModel.java:
	Reformatted.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/JRootPane.java
	(setMenuBar): Added @deprecated tag.
	(getMenuBar): Likewise.
	* javax/swing/JTable.java
	(sizeColumnsToFit): Likewise.

2005-02-15  Paul Jenner  <psj.home@ntlworld.com>

	* javax/swing/ImageIcon.java (setImage): Implemented.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/JTable.java:
	Removed unused imports.

2005-02-15  Olga Rodimina  <rodimina@redhat.com>

	(prepareRenderer): Get column's index in dataModel instead
	of column's view index.
	(getColumnCount): return count of the columns in ColumnModel,
	not in dataModel.
	(removeColumn): Implemented.
	(moveColumm): Likewise.
	(setRowHeight): throw IllegalArgumentException if height is
	less then 1.
	* javax/swing/table/DefaultTableColumnModel.java: Add javadocs.
	(DefaultTableColumnModel):Add call to createSelectionModel().
	(addColumn): Fire columnAdded event to registered listeners.
	(removeColumn): Fire columnRemoved event to registered listeners.
	(moveColumn): Fire columnMoved event to registered listeners.
	(setColumnMargin): Fire ColumnMarginChanged event to registered listeners.
	(getColumnIndex): Changed parameter name.
	(setColumnSelectionAllowed): Likewise.
	(fireColumnAdded): Implemented.
	(fireColumnRemoved): Likewise.
	(fireColumnMoved): Likewise.
	(fireColumnMarginChanged): Likewise.
	(getListeners): Changed parameter name.
	(propertyChange): Implemented.
	(valueChanged): Changed parameter name.
	(createSelectionModel): Implemented.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* gnu/java/awt/peer/gtk/GtkToolkit.java:
	Explicitely import used classes.
	(getLocalGraphicsEnvironment): Simplify.
	* java/awt/Window.java (Window):
	Enable code to get the default GraphicsConfiguration.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/plaf/metal/DefaultMetalTheme.java
	(CONTROL_TEXT_FONT): New static field.
	(MENU_TEXT_FONT): Likewise.
	(SUB_TEXT_FONT): Likewise.
	(SYSTEM_TEXT_FONT): Likewise.
	(USER_TEXT_FONT): Likewise.
	(WINDOW_TITLE_FONT): Likewise.
	(getControlTextFont): New method.
	(getMenuTextFont): Likewise.
	(getSubTextFont): Likewise.
	(getSystemTextFont): Likewise.
	(getUserTextFont): Likewise.
	(getWindowTitleFont): Likewise.
	* javax/swing/plaf/metal/MetalTheme.java
	(BLACK): Initialize with Color.BLACK.
	(WHITE): Initialize with Color.WHITE.
	(getInactiveControlTextColor): Return getControlDisabled().
	(getMenuDisabledForeground): Return getSecondary3().
	(getControlTextFont): New abstract method.
	(getMenuTextFont): Likewise.
	(getSubTextFont): Likewise.
	(getSystemTextFont): Likewise.
	(getUserTextFont): Likewise.
	(getWindowTitleFont): Likewise.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/JFormattedTextField.java
	(getFocusLostBehavior): Fixed typo in method name.
	(setFocusLostBehavior): Likewise.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/TransferHandler.java:
	Reworked import statements.

2005-02-15  Jerry Quinn  <jlquinn@optonline.net>

	* java/awt/Button.java,
	java/awt/Canvas.java,
	java/awt/Checkbox.java,
	java/awt/CheckboxMenuItem.java,
	java/awt/Choice.java,
	java/awt/Dialog.java,
	java/awt/Frame.java,
	java/awt/Label.java,
	java/awt/List.java,
	java/awt/Menu.java,
	java/awt/MenuBar.java,
	java/awt/MenuItem.java,
	java/awt/PopupMenu.java,
	java/awt/ScrollPane.java,
	java/awt/Scrollbar.java,
	java/awt/TextArea.java,
	java/awt/Window.java (getAccessibleContext): Clean up comments.
	Reformat.
	* java/awt/Button.java,
	java/awt/Checkbox.java,
	java/awt/Choice.java,
	java/awt/Menu.java,
	java/awt/PopupMenu.java,
	java/awt/TextArea.java (getAccessibleContext): Only create new
	accessible once.
	* java/awt/TextComponent.java (getAccessibleContext): Implement.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* java/awt/Button.java,
	javax/swing/JApplet.java,
	javax/swing/JFormattedTextField.java,
	javax/swing/JWindow.java,
	javax/swing/JTree.java,
	javax/swing/plaf/basic/BasicEditorPaneUI.java,
	javax/swing/plaf/basic/BasicTextPaneUI.java,
	javax/swing/plaf/basic/BasicTreeUI.java:
	Reworked import statements.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* Makefile.am: Put javax.imageio into its own library and link it
	against lib-org-w3c-dom.la to fix bootstrapping.
	* Makefile.in: Regenerated.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/text/TextAction.java
	(getTextComponent): Simplified. Added Javadoc.
	(augmentList): Implemented. Added Javadoc.
	(getFocusedComponent): Added javadoc.

2005-02-15  Jerry Quinn  <jlquinn@optonline.net>

	* java/awt/Scrollbar.java (AccessibleAWTScrollbar,
	getAccessibleContext): Implement.
	* java/awt/ScrollPane.java (AccessibleAWTScrollPane,
	getAccessibleContext): Implement.

2005-02-15  Jerry Quinn  <jlquinn@optonline.net>

	* java/awt/Dialog.java (AccessibleAWTFrame, getAccessibleContext):
	Implement.
	* java/awt/Frame.java (AccessibleAWTFrame, getAccessibleContext):
	Implement.
	* java/awt/Window.java (getAccessibleContext): Fix comment.
	Remove extra import.

2005-02-15  Jerry Quinn  <jlquinn@optonline.net>

	* java/awt/Window.java (AccessibleAWTWindow): Implement.
	(isActive, isFocused, getAccessibleContext): Implement.

2005-02-15  Jerry Quinn  <jlquinn@optonline.net>

	* java/awt/MenuItem.java (getAccessibleContext): Implement.
	* java/awt/MenuComponent.java (accessibleContext): Make package
	visible.
	* java/awt/CheckboxMenuItem.java (getAccessibleContext,
	AccessibleAWTCheckboxMenuItem): Implement.

2005-02-15  Jerry Quinn  <jlquinn@optonline.net>

	* java/awt/List.java: Implement AccessibleAWTList,
	AccessibleAWTListChild.

2005-02-15  Jerry Quinn  <jlquinn@optonline.net>

	* java/awt/Choice.java: Add implements declaration for
	Accessible.

2005-02-15  Jerry Quinn  <jlquinn@optonline.net>

	* javax/imageio/metadata/IIOInvalidTreeException.java: Use Node
	instead of Object.

2005-02-15  Jerry Quinn  <jlquinn@optonline.net>

	* javax/imageio/metadata/IIOMetadataNode.java: Add Node to
	implemented interface list.

2005-02-15  Jerry Quinn  <jlquinn@optonline.net>

	* javax/imageio/metadata/IIOMetadataNode.java: Implement.
	* javax/imageio/metadata/IIOAttr.java: New class.
	* javax/imageio/metadata/IIONamedNodeMap.java: New class.
	* javax/imageio/metadata/IIONodeList.java: New class.
	* Makefile.am: Added new files.
	* Makefile.in: Regenerated.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/AbstractAction.java,
	javax/swing/AbstractCellEditor.java,
	javax/swing/AbstractListModel.java,
	javax/swing/DefaultBoundedRangeModel.java,
	javax/swing/DefaultButtonModel.java,
	javax/swing/DefaultCellEditor.java,
	javax/swing/DefaultComboBoxModel.java,
	javax/swing/DefaultDesktopManager.java,
	javax/swing/JMenu.java,
	javax/swing/JSlider.java,
	javax/swing/KeyStroke.java,
	javax/swing/OverlayLayout.java,
	javax/swing/ScrollPaneLayout.java,
	javax/swing/SizeRequirements.java,
	javax/swing/ViewportLayout.java:
	Made serialVersionUID private.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* gnu/java/awt/peer/gtk/GtkComponentPeer.java:
	Reformatted.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* gnu/java/awt/peer/gtk/GdkGraphics2D.java: More reformatting.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* gnu/java/awt/peer/gtk/GdkGraphics2D.java: Reformatted.

2005-02-15  Jeroen Frijters  <jeroen@frijters.net>

	* java/awt/EventDispatchThread.java,
	java/awt/Toolkit.java:
	Don't catch java.lang.ThreadDeath.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/text/PasswordView.java
	(drawEchoCharacter): Added javadoc.
	(drawSelectedText): Likewise.
	(drawUnselectedText): Likewise.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/JRootPane.java
	(windowDecorationStyle): New field.
	(setMenuBar): New method.
	(getMenuBar): Likewise.
	(getWindowDecorationStyle): Likewise.
	(setWindowDecorationStyle): Likewise.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/DefaultListSelectionModel.java
	(leadAnchorNotificationEnabled): Made protected.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/InternalFrameFocusTraversalPolicy.java: New file.
	* Makefile.am: Added InternalFrameFocusTraversalPolicy.java.
	* Makefile.in: Regenerated.


2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/JFormattedTextField.java: Implemented.
	* javax/swing/JWindow.java
	(JWindow): New constructors.
	(initWindow): Renamed from initFrame.
	* javax/swing/UIDefaults.java
	(ActiveValue): Made interface static.
	(LazyValue): Likewise.
	* javax/swing/plaf/basic/BasicInternalFrameTitlePane.java
	(TitlePaneLayout.TitlePaneLayout): New constructor.
	* javax/swing/plaf/basic/BasicSliderUI.java
	(ChangeHandler): Made public.
	(FocusHandler): Likewise.
	(PropertyChangeHandler): Likewise.
	(ScrollListener): Likewise.
	* javax/swing/plaf/basic/BasicTabbedPaneUI.java
	(FocusHandler): Likewise.
	(MouseHandler): Likewise.
	* javax/swing/plaf/basic/BasicTextPaneUI.java
	(BasicTextPaneUI): Extend BasicEditorPaneUI.
	* javax/swing/plaf/basic/BasicToolBarUI.java
	(BasicToolBarUI): Simplified. Reworked javadoc.
	(canDock): Simplified. Make public.
	(DockingListener): Made public.
	* javax/swing/text/JTextComponent.java
	(navigationFilter): New field.
	(getNavigationFilter): New method.
	(setNavigationFilter): Likewise.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/plaf/metal/MetalTheme.java
	(getControlTextColor): Return getControlInfo().
	(getHighlightedTextColor): Return getControlTextColor().

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/plaf/basic/BasicButtonListener.java
	(BasicButtonListener): New constructor.
	* javax/swing/plaf/basic/BasicButtonUI.java
	(createButtonListener): Usw new BasicButtonListener constructor.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/imageio/event/package.html,
	javax/imageio/metadata/package.html: New files.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* java/awt/image/MemoryImageSource.java: Reformatted.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/tree/TreeCellEditor.java: Refomatted.

2005-02-15  Jeroen Frijters  <jeroen@frijters.net>

	* java/awt/color/ICC_Profile.java
	(finalize): Removed pointless field assignments.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/plaf/basic/BasicEditorPaneUI.java: New file.
	* Makefile.am: Added javax/swing/plaf/basic/BasicEditorPaneUI.java.
	* Makefile.in: Regenerated.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/text/DefaultStyledDocument.java: New file.
	* Makefile.am: Added javax/swing/text/DefaultStyledDocument.java.
	* Makefile.in: Regenerated.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/JFileChooser.java
	(showDialog): Return CANCEL_OPTION for now.
	(showOpenDialog): Likewise.
	(showSaveDialog): Likewise.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/JApplet.java
	(HIDE_ON_CLOSE): Removed.
	(EXIT_ON_CLOSE): Likewise.
	(DISPOSE_ON_CLOSE): Likewise.
	(DO_NOTHING_ON_CLOSE): Likewise.
	(close_action): Likewise.
	(getDefaultCloseOperation): Likewise.
	(setDefaultCloseOperation): Likewise.
	(processWindowEvent): Likewise.
	(getPreferredSize): Simplified.
	* javax/swing/JInternalFrame.java
	(setDefaultCloseOperation): Fixed throwing exception on wrong argument
	value.
	* javax/swing/JWindow.java
	(HIDE_ON_CLOSE): Removed.
	(EXIT_ON_CLOSE): Likewise.
	(DISPOSE_ON_CLOSE): Likewise.
	(DO_NOTHING_ON_CLOSE): Likewise.
	(close_action): Likewise.
	(processKeyEvent): Likewise.
	(setDefaultCloseOperation): Likewise.
	(getPreferredSize): Simplified.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/JTextField.java
	(getPreferredSize): Re-implemented.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/JLabel.java
	(setDisplayedMnemonic): Use only upper case characters.
	(setDisplayedMnemonicIndex): Handle index == -1 and fire
	PropertyChangeEvent after property got set to the new index.

2005-02-15  Robert Schuster <thebohemian@gmx.net>

	* javax/swing/JComboBox.java:
	(JComboBox): Removed selection of the
	first item in the model.

2005-02-15  Robert Schuster <thebohemian@gmx.net>

	* javax/swing/JComboBox.java
	added support for no item being selected
	(JComboBox): select first or nothing depending on element count
	(setModel): cleaned up unneeded "this." usage, added more
	docs, made exception behavior match that of the JDK
	(setLighWeightPopupEnabled): removed unneeded "this." usage
	(setEditable): dito
	(setMaximumRowCount): dito
	(setRenderer): dito
	(setPrototypeDisplayValue): dito
	(getSelectedItem): simplified, added more user doc
	(setSelectedIndex): corrected exception behavior, added more user doc
	(getSelectedIndex): fixed hardcoded dependency on DefaultComboBoxModel,
	added performance warning to user doc
	(addItem): fixed exception behavior, added user doc
	(insertItemAt): dito
	(removeItem): dito
	(removeItemAt): dito
	(removeAll): fixed exception behavior, added user doc, added support
	for model not being instance of DefaultComboBoxModel
	(getSelectedItemObjects): simplified
	(getItemCount): fixed dependency on DefaultComboBoxModel
	(getItemAt): fixed dependency on MutableComboBoxModel
	* javax/swing/DefaultComboBoxModel.java:
	(setSelectedItem): updates selected item only if new
	value is null or known (match JDK behavior)
	* javax/swing/plaf/basic/BasicComboBoxUI.java:
	(paintCurrentValue): renders "" if no item is selected

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/plaf/metal/MetalTheme.java,
	javax/swing/plaf/metal/DefaultMetalTheme.java:
	New files.
	* javax/swing/plaf/metal/MetalLookAndFeel.java
	* Makefile.am: Added the new files.
	* Makefile.in: Regenerated.

2005-02-15  Olga Rodimina  <rodimina@redhat.com>

	* javax/swing/JTable.java
	(editorComp): New field.
	(JTable): Initialize local variables and call updateUI
	(selectionBackground): Make protected.
	(selectionForeground): Likewise.
	(initializeLocalVars): Create default editors and renderers,
	initialize editingColumn, editingRow variables.
	(createDefaultEditors): New Method.
	(createDefaultRenderers): Likewise.
	(createDefaultListSelectionModel): Removed
	(createDefaultSelectionModel): New Method.
	(createDefaultTableHeader): Likewise
	(removeColumn): Likewise.
	(getEditingColumn): Likewise.
	(setEditingColumn): Likewise.
	(getEditingRow): Likewise.
	(setEditingRow): Likewise.
	(getEditorComponent): Likewise.
	(isEditing): Likewise.
	(setDefaultEditor): Likewise.
	(addColumnSelectionInterval): Likewise.
	(addRowSelectionInterval): Likewise.
	(setColumnSelectionInterval): Likewise.
	(setRowSelectionInterval): Likewise.
	(removeColumnSelectionInterval): Likewise.
	(removeRowSelectionInterval): Likewise.
	(isColumnSelected): Likewise.
	(isRowSelected): Likewise.
	(isCellSelected): Likewise.
	(selectAll): Likewise.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/JTable.java
	(addColumn): New method.
	(getColumnClass): Likewise.
	(getColumnName): Likewise.

2005-02-15  Paul Jenner  <psj.home@ntlworld.com>

	* javax/swing/TransferHandler.java
	(createTransferable): Made protected.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/JTable.java,
	javax/swing/plaf/basic/BasicTableHeaderUI.java,
	javax/swing/plaf/basic/BasicTableUI.java:
	Use fixed get/setIntercellSpacing() methods.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/JTable.java
	(getIntercellSpacing): Fixed typo in method name.
	(setIntercellSpacing): Likewise.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/text/JTextComponent.java
	(focusAccelerator): New variable.
	(getFocusAccelerator): New method.
	(setFocusAccelerator): Likewise.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/JComponent.java
	(setTransferHandler): Made public. Fire property change event.
	* javax/swing/TransferHandler.java: Implemented.
	* javax/swing/text/JTextComponent.java
	(DefaultTransferHandler): New inner class.
	(defaultTransferHandler): New variable.
	(copy): New method.
	(cut): Likewise.
	(paste): Likewise.
	(doTransferAction): Likewise.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/JTree.java
	(collapsePath): New method.
	(collapseRow): Likewise.
	(expandPath): Likewise.
	(expandRow): Likewise.
	(checkExpandParents): Likewise.
	(doExpandParents): Likewise.
	(setExpandedState): Likewise.
	(makeVisible): Likewise.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/JPasswordField.java: Updated javadocs.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/JLayeredPane.java
	(getLayer): Fixed return type, made public.
	(getPosition): Use new getLayer().
	(SetPosition): Likewise.
	(getIndexOf): Likewise.
	(remove): Likewise.
	* javax/swing/JInternalFrame.java
	(getLayer): Use new JLayeredPane.getLayer().


2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/table/TableColumn.java: Added/fixed javadocs over all.
	(setHeaderValue): Simplified. Do nothing when old value == new value.

2005-02-15  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* gnu/java/awt/peer/gtk/GdkGraphics.java (setClip): Protect
	against null clip region.
	* gnu/java/awt/peer/gtk/GtkFramePeer.java (create): Call
	gtkWindowSetResizable.
	(postConfigureEvent): Only revalidate if frame size has changed.
	* gnu/java/awt/peer/gtk/GtkWindowPeer.java (postConfigureEvent):
	Only revalidate if frame size has changed.
	* java/awt/Component.java (reshape): Only repaint and post
	component events if component is showing.
	* java/awt/Container.java (addImpl): Only post container event if
	container is showing.
	(remove): Likewise.
	* java/awt/Window.java (setLocationRelativeTo): Implement.
	(setBoundsCallback): Only post component events if component is
	showing.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics.c (clearRect):
	Protect against null graphics structure.  Flush gdk event queue.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/imageio/ImageReader.java,
	javax/imageio/ImageTranscoder.java,
	javax/imageio/ImageWriter.java,
	javax/imageio/spi/ImageInputStreamSpi.java,
	javax/imageio/spi/ImageOutputStreamSpi.java,
	javax/imageio/spi/ServiceRegistry.java,
	javax/imageio/stream/ImageInputStream.java,
	javax/imageio/stream/ImageOutputStream.java: Updated.
	* javax/imageio/IIOException.java,
	javax/imageio/IIOImage.java,
	javax/imageio/IIOParam.java,
	javax/imageio/IIOParamController.java,
	javax/imageio/ImageIO.java,
	javax/imageio/ImageReadParam.java,
	javax/imageio/ImageTypeSpecifier.java,
	javax/imageio/ImageWriteParam.java,
	javax/imageio/spi/IIORegistry.java,
	javax/imageio/spi/ImageReaderSpi.java,
	javax/imageio/spi/ImageWriterSpi.java,
	javax/imageio/stream/FileCacheImageInputStream.java,
	javax/imageio/stream/FileCacheImageOutputStream.java,
	javax/imageio/stream/FileImageInputStream.java,
	javax/imageio/stream/FileImageOutputStream.java,
	javax/imageio/stream/ImageInputStreamImpl.java,
	javax/imageio/stream/ImageOutputStreamImpl.java,
	javax/imageio/stream/MemoryCacheImageInputStream.java,
	javax/imageio/stream/MemoryCacheImageOutputStream.java,
	javax/imageio/event/IIOReadProgressListener.java,
	javax/imageio/event/IIOReadUpdateListener.java,
	javax/imageio/event/IIOReadWarningListener.java,
	javax/imageio/event/IIOWriteProgressListener.java,
	javax/imageio/event/IIOWriteWarningListener.java,
	javax/imageio/metadata/IIOMetadata.java,
	javax/imageio/metadata/IIOMetadataController.java,
	javax/imageio/metadata/IIOMetadataFormat.java,
	javax/imageio/metadata/IIOInvalidTreeException.java,
	javax/imageio/metadata/IIOMetadataFormatImpl.java,
	javax/imageio/metadata/IIOMetadataNode.java: New files.
	* Makefile.am (javax_source_files): Added new files
	* Makefile.in: Regenerated.

2005-02-15  Graydon Hoare  <graydon@redhat.com>

	* gnu/java/awt/peer/gtk/GdkGraphics2D.java:
	Rework painting into BufferedImages
	* gnu/java/awt/peer/gtk/GdkPixbufDecoder.java:
	Construct BufferedImage with alpha only when alpha is
	present in colormodel.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics2D.c:
	Rework painting into client-side jint arrays.
	* jni/gtk-peer/gtkcairopeer.h:
	Likewise.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/DefaultListCellRenderer.java
	(serialVersionUID): Made private.
	(getListCellRendererComponent): Set horizontal alignment.
	* javax/swing/JLabel.java
	(setVerticalAlignment): Re-implemented.
	(setHorizontalAlignment): Do nothing if old value = new value.
	* javax/swing/JList.java
	(setCellRenderer): Likewise.
	(setModel): Re-implemented.
	(setSelectionModel): Likewise.

2005-02-15  David Gilbert <david.gilbert@object-refinery.com>

	* java/awt/Component.java,
	java/awt/geom/Rectangle2D.java:
	Javadoc fixes.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/AbstractListModel.java
	(fireContentsChanged): Simplified.
	(fireIntervalAdded): Likewise.
	(fireIntervalRemoved): Likewise.
	* javax/swing/DefaultSingleSelectionModel.java:
	Reformatted.
	(fireStateChanged): Simplified.
	* javax/swing/JPopupMenu.java
	(setSelectionModel): Set property.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* java/awt/print/Book.java: Reformatted.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* java/awt/geom/Area.java
	(QuadSegment.curveArea): Remove unused variables.
	(CubicSegment.curveArea): Likewise.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/JTree.java
	(ANCHOR_SELECTION_PATH_PROPERTY): Added @since tag.
	(LEAD_SELECTION_PATH_PROPERTY): Likewise.
	(EXPANDS_SELECTED_PATHS_PROPERTY): Likewise.
	(EXPANDED): New constant.
	(COLLAPSED): Likewise.
	(nodeStates): New field.
	(cellEditor): New method.
	(cellRenderer): Likewise.
	(selectionModel): Likewise.
	(treeModel): Likewise.
	(scrollPathToVisible): Likewise.
	(scrollRowToVisible): Likewise.
	(isCollapsed): Likewise.
	(isExpanded): Likewise.
	(clearToggledPaths): Likewise.
	(getDescendantToggledPaths): Likewise.
	(hasBeenExpanded): Likewise.
	(isVisible): Likewise.
	(isPathEditable): Likewise.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/JLayeredPane.java: Reformatted.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/tree/DefaultMutableTreeNode.java:
	Completely Revised.
	* javax/swing/tree/MutableTreeNode.java:
	Reformatted.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/JFormattedTextField.java
	(setDocument): Call setDocument of super class. Don't fire property
	change event.

2005-02-15  Sven de Marothy  <sven@physto.se>

	* java/awt/image/IndexColorModel.java:
	Add FIXME with respect to alpha handling.
	(getAlpha): Default to returning opaque pixels.
	* java/awt/image/MultiPixelPackedSampleModel.java
	(MultiPixelPackedSampleModel): Corrected parameters, order of
	bit shifts and masks, stride length off by one.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* javax/swing/JList.java, javax/swing/JTree.java:
	Added much new methods and fixed much methods setting bound properties.

2005-02-16  Mark Wielaard  <mark@klomp.org>

	* Makefile.am (gnu_xml_source_files): Removed
	gnu/xml/dom/DomCDATA.java, gnu/xml/dom/DomEx.java,
	gnu/xml/dom/DomFragment.java, gnu/xml/dom/DomPI.java and
	gnu/xml/dom/ls/DomLSEx.java. Replaced by adding
	gnu/xml/dom/DomCDATASection.java, gnu/xml/dom/DomDOMException.java,
	gnu/xml/dom/DomDocumentFragment.java,
	gnu/xml/dom/DomProcessingInstruction.java and
	gnu/xml/dom/ls/DomLSException.java.
	* Makefile.in: Regenerated.

2005-02-16  Tom Tromey  <tromey@redhat.com>

	* gnu/xml/aelfred2/SAXDriver.java: Ensure that null is returned when
	attribute index is out of bounds.

2005-02-16  Chris Burdess  <dog@gnu.org>

	* gnu/xml/aelfred2/SAXDriver.java: Corrected implementation of
	isDeclared methods. Improved performance of isSpecified methods.

2005-02-16  Chris Burdess  <dog@gnu.org>

	Fixes bug libgcj/19864
	* gnu/xml/dom/DomAttr.java,
	gnu/xml/dom/DomCDATA.java,
	gnu/xml/dom/DomCDATASection.java,
	gnu/xml/dom/DomCharacterData.java,
	gnu/xml/dom/DomDOMException.java,
	gnu/xml/dom/DomDoctype.java,
	gnu/xml/dom/DomDocument.java,
	gnu/xml/dom/DomDocumentConfiguration.java,
	gnu/xml/dom/DomDocumentFragment.java,
	gnu/xml/dom/DomElement.java,
	gnu/xml/dom/DomEx.java,
	gnu/xml/dom/DomFragment.java,
	gnu/xml/dom/DomImpl.java,
	gnu/xml/dom/DomIterator.java,
	gnu/xml/dom/DomNamedNodeMap.java,
	gnu/xml/dom/DomNode.java,
	gnu/xml/dom/DomNsNode.java,
	gnu/xml/dom/DomPI.java,
	gnu/xml/dom/DomProcessingInstruction.java,
	gnu/xml/dom/DomText.java,
	gnu/xml/dom/DomLSEx.java,
	gnu/xml/dom/DomLSException.java,
	gnu/xml/dom/DomLSParser.java,
	gnu/xml/dom/DomLSSerializer.java: Refactoring of exception and DOM
	implementation class names to conform to Classpath guidelines.  Make
	DomLSException use JDK 1.4+ exception chaining.
	* gnu/xml/util/SAXNullTransformerFactory.java,
	gnu/xml/xpath/Predicate.java: Use constants relative to
	declaring class or interface.

2005-02-16  Andrew Haley  <aph@redhat.com>

	* javax/security/auth/Subject.java (doAsPrivileged): If acc is
	null, create a new AccessControlContext.
	* java/security/SecureClassLoader.java (protectionDomainCache):
	new field.
	(defineClass): Create a new protection domain and add it to our
	cache.

	* java/rmi/server/UnicastRemoteObject.java (exportObject): Call
	addStub() to keep track of the stub we've exported.
	(unexportObject): Call deleteStub().
	* java/rmi/server/RemoteObject.java (stubs): New field.
	(addStub): New method.
	(deleteStub): New method.
	(toStub): Rewrite.

	* java/lang/VMCompiler.java (loadSharedLibrary): Pass
	true to findHelper (tryParents).
	* gnu/gcj/runtime/SharedLibLoader.java (SharedLibLoader):
	Likewise.
	* java/net/URLClassLoader.java (SoURLLoader): Likewise.
	* gnu/gcj/runtime/SharedLibHelper.java (SharedLibHelper): Pass
	ProtectionDomain.
	If tryParents is false, don't scan parent class loaders.

	* java/security/Permissions.java (PermissionsHash.implies):
	Iterate over the collection and invoke implies() on each
	element.

2005-02-16  Andrew Haley  <aph@redhat.com>

	* gnu/gcj/runtime/PersistentByteMap.java (name, values, fc): new
	fields.
	(PersistentByteMap): Set name
	Magic number changed to 0x67636a64 ("gcjd").
	(init): Force the map to be prime.
	(emptyPersistentByteMap): File name was a string, now a File.
	(addBytes): Share srings between entries.
	(stringTableSize): New method.
	(capacity): Scale by load factor.
	(force): New method.
	(getFile): New method.
	(close): New method.
	(putAll): New method.
	(ByteWrapper): New class.
	* gnu/gcj/tools/gcj_dbtool/Main.java (verbose): New field.
	(main): Guess the average string size as 32, not 64.
	Copy a database before modifying it, so that we can update a
	database in a running system.
	If a database isn't big enough, resize it.
	"-m": new option: merges databases.
	"-a": Create a new detabase if it doesn't exist.
	(usage): Correct, add new option.
	(addJar): Copy a database before modifying it.
	(resizeMap): New method.

2005-02-15  David Daney <ddaney@avtrex.com>
	    Bryce McKinlay  <mckinlay@redhat.com>

	* prims.cc (_Jv_CreateJavaVM): Add comment about initialization order.
	* posix-threads.cc (_Jv_InitThreads): Call block_sigchld() here to
	ensure that GC threads inherit the new signal mask.
	(block_sigchld): Call JvFail rather than throwing exception if
	pthread_sigmask() fails.

2005-02-15  Mark Wielaard  <mark@klomp.org>

	* java/util/jar/Attributes.java (Name.CLASS_PATH): Document that
	file path elements are separated by spaces.

2005-02-15  Mark Wielaard  <mark@klomp.org>

	* java/util/jar/Attributes.java (Attributes.Name): Add documentation
	to describe attributes without a constant field value in this class.

2005-02-15  Michael Koch  <konqueror@gmx.de>

	* java/util/jar/Attributes.java
	(CREATED_BY, JAVA_BEAN, MAGIC): Removed.

2005-02-15  Mark Wielaard  <mark@klomp.org>

	* java/net/URLClassLoader.java (JarURLLoader.JarURLLoader): Just use
	space for parsing CLASS_PATH attribute.

2005-02-15  Mark Wielaard  <mark@klomp.org>

	* java/net/URLClassLoader.java (JarURLLoader.JarURLLoader): Don't look
	aside for "GCJLIBS" in directory where jarfiles are loaded.
	(JarURLLoader.getClass): Removed method.
	(JarURLLoader.toString): Removed method.
	(FileResource.toString): Removed method.

2005-02-15  Mark Wielaard  <mark@klomp.org>

	* javax/net/ssl/SSLContext.java (getInstance): Add exception message
	and/or cause before throwing.

2005-02-15  Richard Henderson  <rth@redhat.com>

	* Makefile.am (libgcj_la_SOURCES): Move all sources ...
	(libgcj0_convenience_la_SOURCES): ... here.
	(libgcj_la_LIBADD): Add libgcj0_convenience.la.
	(libgcj_la_DEPENDENCIES): Include libgcj_la_LIBADD.
	* Makefile.in: Regenerate.

2005-02-14  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* jawt.c: New file.
	* include/jawt.h: Likewise.
	* include/jawt_md.h: Likewise.
	* include/Makefile.am (tool_include__HEADERS): Add jawt.h and
	jawt_md.h files.
	* include/Makefile.in: Regenerate.
	* jni/classpath/classpath_jawt.h: Likewise.
	* jni/gtk-peer/gtk_jawt.c: Likewise.
	* Makefile.am: Build libjawt.so.
	* Makefile.in: Regenerate.

2005-02-14  Tom Tromey  <tromey@redhat.com>

	* testsuite/libjava.lang/PR19921.java: Use correct class name.

2005-02-14  Tom Tromey  <tromey@redhat.com>

	* testsuite/libjava.lang/PR19921.out: Renamed from PR19929.out.
	* testsuite/libjava.lang/PR19921.java: Renamed from PR19929.java.

2005-02-14  Tom Tromey  <tromey@redhat.com>

	For PR java/19929:
	* testsuite/libjava.lang/PR19929.out: New file.
	* testsuite/libjava.lang/PR19929.java: New file.

2005-02-14  Anthony Green  <green@redhat.com>

	PR libgcj/18116
	* testsuite/libjava.jni/PR18116.c: New file.
	* testsuite/libjava.jni/PR18116.java: New file.
	* testsuite/libjava.jni/PR18116.out: New file.

2005-02-13  Anthony Green  <green@redhat.com>

	PR libgcj/18116
	* jni.cc (nathash_add): Don't strdup the method signature.
	(_Jv_JNI_RegisterNatives): Convert the slashes to dots in the
	method signature.
	Update copyright.

2005-02-12  Mark Wielaard  <mark@klomp.org>

	Fixes bug libgcj/8170
	* java/lang/ClassLoader.java (loadClass): Don't rewrap
	ClassNotFoundException.
	* gnu/java/lang/MainThread.java (run): Chain NoClassDefFoundError.
	* gnu/gcj/runtime/NameFinder.java (remove_interpreter): Removed.
	(remove_internal): New field superceding remove_interpreter.
	(sanitizeStack): Remove all no-package classes starting with "_Jv_".
	Remove no-class methods starting with "_Jv_". And Replace null
	class or method names with the empty string. Stop at either the
	MainThread or a real Thread run() method.
	(newElement): Made static.
	* java/net/URLClassLoader.java (findClass): Throw
	ClassNotFoundExceptions including urls, plus parent using toString().
	(thisString): New field.
	(toString): New method.

2005-02-10  Tom Tromey  <tromey@redhat.com>

	* external/sax/Makefile.in: Rebuilt.
	* external/sax/Makefile.am (all-local): Removed.
	(BUILT_SOURCES): New variable.
	(mostlyclean-local): No error if no classes to delete.
	* external/w3c_dom/Makefile.in: Rebuilt.
	* external/w3c_dom/Makefile.am (all-local): Removed.
	(BUILT_SOURCES): New variable.
	(mostlyclean-local): No error if no classes to delete.

2005-02-10  Bryce McKinlay  <mckinlay@redhat.com>

	* testsuite/libjava.mauve/xfails: Updated to reflect current state
	of mauve and libjava.

2005-02-09  Tom Tromey  <tromey@redhat.com>

	* gnu/java/net/protocol/jar/Connection.java (getJarFile): Open
	jar file with OPEN_DELETE.
	* java/util/zip/ZipFile.java (ZipFile): Call deleteOnExit when
	OPEN_DELETE is used.

2005-02-09  Tom Tromey  <tromey@redhat.com>

	* java/util/zip/InflaterInputStream.java (markSupported):
	Override.
	(mark, reset): Likewise.

2005-02-08  Tom Tromey  <tromey@redhat.com>

	* java/net/URI.java (AUTHORITY_REGEXP): Handle case where user
	name or port is missing.
	(AUTHORITY_USERINFO_GROUP, AUTHORITY_HOST_GROUP,
	AUTHORITY_PORT_GROUP): Updated.

2005-02-08  Tom Tromey  <tromey@redhat.com>

	* configure: Rebuilt.
	* configure.ac: Reduce number of calls to AC_CHECK_FUNCS and
	AC_CHECK_HEADERS.

2005-02-07  Tom Tromey  <tromey@redhat.com>

	* java/lang/natRuntime.cc (insertSystemProperties): Set
	sun.boot.class.path earlier.

2005-02-07  Tom Tromey  <tromey@redhat.com>

	* defineclass.cc (handleClassBegin): Use
	_Jv_RegisterInitiatingLoader.
	* java/lang/Class.h (_Jv_UnregisterInitiatingLoader): Declare.
	* java/lang/natVMClassLoader.cc (resolveClass): Don't register
	class.  Use _Jv_UnregisterInitiatingLoader.
	* java/lang/natClassLoader.cc (_Jv_UnregisterInitiatingLoader):
	New function.

2005-02-07  Mark Wielaard  <mark@klomp.org>

	Reported by Timo Lindfors <timo.lindfors@iki.fi>
	java/util/regex/Matcher.java (lookingAt): Set position when match
	found.
	(matches): Implemented through lookingAt().

2005-02-07  Mark Wielaard  <mark@klomp.org>

	Fix suggested by Timo Lindfors <timo.lindfors@iki.fi>
	* java/util/regex/Pattern.java (split(CharSequence,int)):
	Fix while empties > 0 loops.

2005-02-07  Robert Schuster  <thebohemian@gmx.net>

	* gnu/java/nio/charset/ISO_8859_1.java,
	gnu/java/nio/charset/US_ASCII.java,
	gnu/java/nio/charset/UTF_16.java,
	gnu/java/nio/charset/UTF_16_LE.java,
	gnu/java/nio/charset/UTF_16_BE.java,
	gnu/java/nio/charset/UTF_8.java: Fixed canonical names
	 and aliases according to
	 "http://www.iana.org/assignments/character-sets",
	 "http://java.sun.com/j2se/1.5.0/docs/guide/intl/encoding.doc.html"
	 and "http://oss.software.ibm.com/cgi-bin/icu/convexp?s=ALL".
	* gnu/java/nio/charset/Provider.java: Made charset lookup
	 case-insensitive which fixes bug #11740.

2005-02-07  Tom Tromey  <tromey@redhat.com>

	PR libgcj/19611:
	* Makefile.in: Rebuilt.
	* Makefile.am (src.zip): New target.
	(install-src.zip): Likewise.
	(sourcesdir): New variable.

2005-02-06  Jerry Quinn  <jlquinn@optonline.net>

	* javax/imageio/metadata/IIOMetadataNode.java:
	Implemented.
	* javax/imageio/metadata/IIOAttr.java,
	javax/imageio/metadata/IIONamedNodeMap.java,
	javax/imageio/metadata/IIONodeList.java:
	New files

2005-02-06  Graydon Hoare  <graydon@redhat.com>

	* gnu/java/awt/ClasspathToolkit.java
	(registerImageIOSpis): New method.
	* javax/imageio/ImageIO.java
	(WriterFormatFilter.filter): Fix copy-and-paste typos.
	(WriterMIMETypeFilter.filter): Likewise.
	(ImageReaderIterator): Pass extension argument through to SPI.
	(getReadersByFilter): Likewise.
	(getWritersByFilter): Likewise.
	(getImageReadersByFormatName): Likewise.
	(getImageReadersByMIMEType): Likewise.
	(getImageReadersBySuffix): Likewise.
	(getImageWritersByFormatName): Likewise.
	(getImageWritersByMIMEType): Likewise.
	(getImageWritersBySuffix): Likewise.
	(read): Implement.
	(write): Implement.
	* javax/imageio/ImageReader.java
	(progressListeners): Initialize.
	(setInput): Implement.
	* javax/imageio/ImageWriter.java
	(progressListeners): Initialize.
	(warningListeners): Likewise.
	(warningLocales): Likewise.
	(setOutput): Test "isInstance" rather than class equality.
	* javax/imageio/spi/IIORegistry.java
	(static): Add reader and writer SPIs.
	(IIORegistry): Call ClasspathToolkit.registerImageIOSpis.

2005-02-06  Michael Koch  <konqueror@gmx.de>

	* javax/imageio/metadata/IIOInvalidTreeException.java
	(IIOInvalidTreeException): Reformatted.
	* javax/imageio/spi/IIORegistry.java
	(static): Register ImageReaderSpi.class and ImageWriterSpi.class.
	* javax/imageio/stream/MemoryCacheImageInputStream.java:
	Reworked import statements.

2005-02-06  Michael Koch  <konqueror@gmx.de>

	* javax/imageio/stream/FileImageOutputStream.java:
	Implemented.

2005-02-06  Michael Koch  <konqueror@gmx.de>

	* javax/imageio/stream/FileCacheImageInputStream.java,
	javax/imageio/stream/FileCacheImageOutputStream.java,
	javax/imageio/stream/FileImageInputStream.java,
	javax/imageio/stream/ImageInputStreamImpl.java,
	javax/imageio/stream/ImageOutputStreamImpl.java,
	javax/imageio/stream/MemoryCacheImageInputStream.java,
	javax/imageio/stream/MemoryCacheImageOutputStream.java:
	Added all missing methods in javax.imageio.stream.

2005-02-02  David Daney  <ddaney@avtrex.com>

	* java/net/InetAddress.java (InetAddress): Make a private copy of
	the address.
	* java/net/Inet4Address.java (getAddress): Return a copy of the
	address.
	* java/net/Inet6Address.java (Inet6Address): Use private copy of
	the address
	(getAddress): Return a copy of the address.
	(equals): Rewrote.

2005-02-02  Tom Tromey  <tromey@redhat.com>

	* Makefile.in: Rebuilt.
	* Makefile.am (classes.stamp): New target, broken out from
	libgcj.jar target.
	($(all_java_class_files)): Depend on it.
	(libgcj-@gcc_version@.jar): Likewise.
	(all-recursive): Likewise.
	(CLEANFILES): Include classes.stamp.

2005-02-02  Hans Boehm  <Hans.Boehm@hp.com>

	* link.cc: Include <stdio.h>

2005-02-02  Tom Tromey  <tromey@redhat.com>

	PR libgcj/19681:
	* Makefile.in: Rebuilt.
	* Makefile.am (ordinary_java_source_files): Added new class.
	* java/lang/natVMClassLoader.cc (getSystemClassLoaderInternal):
	Use system_instance, not instance.
	* gnu/gcj/runtime/SystemClassLoader.java: New file.
	* gnu/gcj/runtime/VMClassLoader.java (init): Don't search
	java.class.path.
	(system_instance): New field.
	(initialize): Initialize the system loader as well.
	(VMClassLoader): Default to LIB_CACHE.

2005-02-02  Tom Tromey  <tromey@redhat.com>

	* gnu/gcj/runtime/PersistentByteMap.java: Fixed typo.
	* prims.cc: Fixed comment.

2005-02-01  Tom Tromey  <tromey@redhat.com>

	* Makefile.in: Rebuilt.
	* Makefile.am (BOOTCLASSPATH): Added sax and w3c_dom.
	(.java.class): Use BOOTCLASSPATH.

2005-02-01  Tom Tromey  <tromey@redhat.com>

	* external/w3c_dom/Makefile.am: New file.
	* external/w3c_dom/Makefile.in: New file.
	* external/sax/Makefile.am: New file.
	* external/sax/Makefile.in: New file.
	* external/Makefile.in: New file.
	* external/Makefile.am: New file.
	* external/README: New file from Classpath.
	* configure, aclocal.m4, Makefile.in: Rebuilt.
	* configure.ac (AC_CONFIG_FILES): Create new Makefiles.
	* Makefile.am (SUBDIRS): Added external.
	(toolexeclib_LTLIBRARIES): Removed lib-org-xml-sax.la,
	lib-org-w3c-dom.la, lib-org-ietf-gss.la.
	(BOOTCLASSPATH): New variable.
	(AM_GCJFLAGS): Use it.
	(gnu_xml_source_files): New variable.
	(libgcj_la_SOURCES): Use it.
	(libgcj_la_LDADD): Include new convenience libraries.
	(lib_org_ietf_jgss_la_SOURCES): Removed.
	(lib_org_ietf_jgss_la_DEPENDENCIES): Likewise.
	(lib_org_ietf_jgss_la_LIBADD): Likewise.
	(lib_org_w3c_dom_la_SOURCES): Removed.
	(lib_org_w3c_dom_la_DEPENDENCIES): Likewise.
	(lib_org_w3c_dom_la_LIBADD): Likewise.
	(lib_org_xml_sax_la_SOURCES): Removed.
	(lib_org_xml_sax_la_DEPENDENCIES): Likewise.
	(lib_org_xml_sax_la_LIBADD): Likewise.
	(all_java_source_files): Updated.
	(property_files): Likewise.
	(libgcj-@gcc_version@.jar): Include classes from external/.
	(javax_source_files): Updated.
	(ordinary_java_source_files): Updated.
	* javax/xml/XMLConstants.java,
	javax/xml/datatype/DatatypeConfigurationException.java,
	javax/xml/datatype/DatatypeConstants.java,
	javax/xml/datatype/DatatypeFactory.java,
	javax/xml/datatype/Duration.java,
	javax/xml/datatype/XMLGregorianCalendar.java,
	javax/xml/datatype/package.html,
	javax/xml/namespace/NamespaceContext.java,
	javax/xml/namespace/QName.java, javax/xml/namespace/package.html,
	javax/xml/parsers/DocumentBuilder.java,
	javax/xml/parsers/DocumentBuilderFactory.java,
	javax/xml/parsers/FactoryConfigurationError.java,
	javax/xml/parsers/ParserConfigurationException.java,
	javax/xml/parsers/SAXParser.java,
	javax/xml/parsers/SAXParserFactory.java,
	javax/xml/parsers/package.html,
	javax/xml/transform/ErrorListener.java,
	javax/xml/transform/OutputKeys.java,
	javax/xml/transform/Result.java, javax/xml/transform/Source.java,
	javax/xml/transform/SourceLocator.java,
	javax/xml/transform/Templates.java,
	javax/xml/transform/Transformer.java,
	javax/xml/transform/TransformerConfigurationException.java,
	javax/xml/transform/TransformerException.java,
	javax/xml/transform/TransformerFactory.java,
	javax/xml/transform/TransformerFactoryConfigurationError.java,
	javax/xml/transform/URIResolver.java,
	javax/xml/transform/package.html,
	javax/xml/transform/dom/DOMLocator.java,
	javax/xml/transform/dom/DOMResult.java,
	javax/xml/transform/dom/DOMSource.java,
	javax/xml/transform/dom/package.html,
	javax/xml/transform/sax/SAXResult.java,
	javax/xml/transform/sax/SAXSource.java,
	javax/xml/transform/sax/SAXTransformerFactory.java,
	javax/xml/transform/sax/TemplatesHandler.java,
	javax/xml/transform/sax/TransformerHandler.java,
	javax/xml/transform/sax/package.html,
	javax/xml/transform/stream/StreamResult.java,
	javax/xml/transform/stream/StreamSource.java,
	javax/xml/transform/stream/package.html,
	javax/xml/validation/Schema.java,
	javax/xml/validation/SchemaFactory.java,
	javax/xml/validation/TypeInfoProvider.java,
	javax/xml/validation/Validator.java,
	javax/xml/validation/ValidatorHandler.java,
	javax/xml/validation/package.html, javax/xml/xpath/XPath.java,
	javax/xml/xpath/XPathConstants.java,
	javax/xml/xpath/XPathException.java,
	javax/xml/xpath/XPathExpression.java,
	javax/xml/xpath/XPathExpressionException.java,
	javax/xml/xpath/XPathFactory.java,
	javax/xml/xpath/XPathFactoryConfigurationException.java,
	javax/xml/xpath/XPathFunction.java,
	javax/xml/xpath/XPathFunctionException.java,
	javax/xml/xpath/XPathFunctionResolver.java,
	javax/xml/xpath/XPathVariableResolver.java,
	javax/xml/xpath/package.html: New files, from GNU JAXP.
	* org/w3c/dom/Attr.java, org/w3c/dom/CDATASection.java,
	org/w3c/dom/CharacterData.java, org/w3c/dom/Comment.java,
	org/w3c/dom/DOMException.java, org/w3c/dom/DOMImplementation.java,
	org/w3c/dom/Document.java, org/w3c/dom/DocumentFragment.java,
	org/w3c/dom/DocumentType.java, org/w3c/dom/Element.java,
	org/w3c/dom/Entity.java, org/w3c/dom/EntityReference.java,
	org/w3c/dom/NamedNodeMap.java, org/w3c/dom/Node.java,
	org/w3c/dom/NodeList.java, org/w3c/dom/Notation.java,
	org/w3c/dom/ProcessingInstruction.java, org/w3c/dom/Text.java,
	org/w3c/dom/ranges/DocumentRange.java,
	org/w3c/dom/ranges/Range.java,
	org/w3c/dom/ranges/RangeException.java,
	org/w3c/dom/traversal/DocumentTraversal.java,
	org/w3c/dom/traversal/NodeFilter.java,
	org/w3c/dom/traversal/NodeIterator.java,
	org/w3c/dom/traversal/TreeWalker.java,
	org/xml/sax/AttributeList.java, org/xml/sax/Attributes.java,
	org/xml/sax/ContentHandler.java, org/xml/sax/DTDHandler.java,
	org/xml/sax/DocumentHandler.java, org/xml/sax/EntityResolver.java,
	org/xml/sax/ErrorHandler.java, org/xml/sax/HandlerBase.java,
	org/xml/sax/InputSource.java, org/xml/sax/Locator.java,
	org/xml/sax/Parser.java, org/xml/sax/SAXException.java,
	org/xml/sax/SAXNotRecognizedException.java,
	org/xml/sax/SAXNotSupportedException.java,
	org/xml/sax/SAXParseException.java, org/xml/sax/XMLFilter.java,
	org/xml/sax/XMLReader.java, org/xml/sax/package.html,
	org/xml/sax/ext/DeclHandler.java,
	org/xml/sax/ext/LexicalHandler.java, org/xml/sax/ext/package.html,
	org/xml/sax/helpers/AttributeListImpl.java,
	org/xml/sax/helpers/AttributesImpl.java,
	org/xml/sax/helpers/DefaultHandler.java,
	org/xml/sax/helpers/LocatorImpl.java,
	org/xml/sax/helpers/NamespaceSupport.java,
	org/xml/sax/helpers/NewInstance.java,
	org/xml/sax/helpers/ParserAdapter.java,
	org/xml/sax/helpers/ParserFactory.java,
	org/xml/sax/helpers/XMLFilterImpl.java,
	org/xml/sax/helpers/XMLReaderAdapter.java,
	org/xml/sax/helpers/XMLReaderFactory.java,
	org/xml/sax/helpers/package.html: Moved to external/.
	* external/sax/README,
	external/sax/org/xml/sax/AttributeList.java,
	external/sax/org/xml/sax/Attributes.java,
	external/sax/org/xml/sax/ContentHandler.java,
	external/sax/org/xml/sax/DTDHandler.java,
	external/sax/org/xml/sax/DocumentHandler.java,
	external/sax/org/xml/sax/EntityResolver.java,
	external/sax/org/xml/sax/ErrorHandler.java,
	external/sax/org/xml/sax/HandlerBase.java,
	external/sax/org/xml/sax/InputSource.java,
	external/sax/org/xml/sax/Locator.java,
	external/sax/org/xml/sax/Parser.java,
	external/sax/org/xml/sax/SAXException.java,
	external/sax/org/xml/sax/SAXNotRecognizedException.java,
	external/sax/org/xml/sax/SAXNotSupportedException.java,
	external/sax/org/xml/sax/SAXParseException.java,
	external/sax/org/xml/sax/XMLFilter.java,
	external/sax/org/xml/sax/XMLReader.java,
	external/sax/org/xml/sax/package.html,
	external/sax/org/xml/sax/ext/Attributes2.java,
	external/sax/org/xml/sax/ext/Attributes2Impl.java,
	external/sax/org/xml/sax/ext/DeclHandler.java,
	external/sax/org/xml/sax/ext/DefaultHandler2.java,
	external/sax/org/xml/sax/ext/EntityResolver2.java,
	external/sax/org/xml/sax/ext/LexicalHandler.java,
	external/sax/org/xml/sax/ext/Locator2.java,
	external/sax/org/xml/sax/ext/Locator2Impl.java,
	external/sax/org/xml/sax/ext/package.html,
	external/sax/org/xml/sax/helpers/AttributeListImpl.java,
	external/sax/org/xml/sax/helpers/AttributesImpl.java,
	external/sax/org/xml/sax/helpers/DefaultHandler.java,
	external/sax/org/xml/sax/helpers/LocatorImpl.java,
	external/sax/org/xml/sax/helpers/NamespaceSupport.java,
	external/sax/org/xml/sax/helpers/NewInstance.java,
	external/sax/org/xml/sax/helpers/ParserAdapter.java,
	external/sax/org/xml/sax/helpers/ParserFactory.java,
	external/sax/org/xml/sax/helpers/XMLFilterImpl.java,
	external/sax/org/xml/sax/helpers/XMLReaderAdapter.java,
	external/sax/org/xml/sax/helpers/XMLReaderFactory.java,
	external/sax/org/xml/sax/helpers/package.html,
	external/w3c_dom/COPYRIGHT.html, external/w3c_dom/README,
	external/w3c_dom/org/w3c/dom/Attr.java,
	external/w3c_dom/org/w3c/dom/CDATASection.java,
	external/w3c_dom/org/w3c/dom/CharacterData.java,
	external/w3c_dom/org/w3c/dom/Comment.java,
	external/w3c_dom/org/w3c/dom/DOMConfiguration.java,
	external/w3c_dom/org/w3c/dom/DOMError.java,
	external/w3c_dom/org/w3c/dom/DOMErrorHandler.java,
	external/w3c_dom/org/w3c/dom/DOMException.java,
	external/w3c_dom/org/w3c/dom/DOMImplementation.java,
	external/w3c_dom/org/w3c/dom/DOMImplementationList.java,
	external/w3c_dom/org/w3c/dom/DOMImplementationSource.java,
	external/w3c_dom/org/w3c/dom/DOMLocator.java,
	external/w3c_dom/org/w3c/dom/DOMStringList.java,
	external/w3c_dom/org/w3c/dom/Document.java,
	external/w3c_dom/org/w3c/dom/DocumentFragment.java,
	external/w3c_dom/org/w3c/dom/DocumentType.java,
	external/w3c_dom/org/w3c/dom/Element.java,
	external/w3c_dom/org/w3c/dom/Entity.java,
	external/w3c_dom/org/w3c/dom/EntityReference.java,
	external/w3c_dom/org/w3c/dom/NameList.java,
	external/w3c_dom/org/w3c/dom/NamedNodeMap.java,
	external/w3c_dom/org/w3c/dom/Node.java,
	external/w3c_dom/org/w3c/dom/NodeList.java,
	external/w3c_dom/org/w3c/dom/Notation.java,
	external/w3c_dom/org/w3c/dom/ProcessingInstruction.java,
	external/w3c_dom/org/w3c/dom/Text.java,
	external/w3c_dom/org/w3c/dom/TypeInfo.java,
	external/w3c_dom/org/w3c/dom/UserDataHandler.java,
	external/w3c_dom/org/w3c/dom/bootstrap/DOMImplementationRegistry.java,
	external/w3c_dom/org/w3c/dom/css/CSS2Properties.java,
	external/w3c_dom/org/w3c/dom/css/CSSCharsetRule.java,
	external/w3c_dom/org/w3c/dom/css/CSSFontFaceRule.java,
	external/w3c_dom/org/w3c/dom/css/CSSImportRule.java,
	external/w3c_dom/org/w3c/dom/css/CSSMediaRule.java,
	external/w3c_dom/org/w3c/dom/css/CSSPageRule.java,
	external/w3c_dom/org/w3c/dom/css/CSSPrimitiveValue.java,
	external/w3c_dom/org/w3c/dom/css/CSSRule.java,
	external/w3c_dom/org/w3c/dom/css/CSSRuleList.java,
	external/w3c_dom/org/w3c/dom/css/CSSStyleDeclaration.java,
	external/w3c_dom/org/w3c/dom/css/CSSStyleRule.java,
	external/w3c_dom/org/w3c/dom/css/CSSStyleSheet.java,
	external/w3c_dom/org/w3c/dom/css/CSSUnknownRule.java,
	external/w3c_dom/org/w3c/dom/css/CSSValue.java,
	external/w3c_dom/org/w3c/dom/css/CSSValueList.java,
	external/w3c_dom/org/w3c/dom/css/Counter.java,
	external/w3c_dom/org/w3c/dom/css/DOMImplementationCSS.java,
	external/w3c_dom/org/w3c/dom/css/DocumentCSS.java,
	external/w3c_dom/org/w3c/dom/css/ElementCSSInlineStyle.java,
	external/w3c_dom/org/w3c/dom/css/RGBColor.java,
	external/w3c_dom/org/w3c/dom/css/Rect.java,
	external/w3c_dom/org/w3c/dom/css/ViewCSS.java,
	external/w3c_dom/org/w3c/dom/events/DocumentEvent.java,
	external/w3c_dom/org/w3c/dom/events/Event.java,
	external/w3c_dom/org/w3c/dom/events/EventException.java,
	external/w3c_dom/org/w3c/dom/events/EventListener.java,
	external/w3c_dom/org/w3c/dom/events/EventTarget.java,
	external/w3c_dom/org/w3c/dom/events/MouseEvent.java,
	external/w3c_dom/org/w3c/dom/events/MutationEvent.java,
	external/w3c_dom/org/w3c/dom/events/UIEvent.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLAnchorElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLAppletElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLAreaElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLBRElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLBaseElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLBaseFontElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLBodyElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLButtonElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLCollection.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLDListElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLDirectoryElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLDivElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLDocument.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLFieldSetElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLFontElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLFormElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLFrameElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLFrameSetElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLHRElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLHeadElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLHeadingElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLHtmlElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLIFrameElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLImageElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLInputElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLIsIndexElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLLIElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLLabelElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLLegendElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLLinkElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLMapElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLMenuElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLMetaElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLModElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLOListElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLObjectElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLOptGroupElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLOptionElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLOptionsCollection.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLParagraphElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLParamElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLPreElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLQuoteElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLScriptElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLSelectElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLStyleElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLTableCaptionElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLTableCellElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLTableColElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLTableElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLTableRowElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLTableSectionElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLTextAreaElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLTitleElement.java,
	external/w3c_dom/org/w3c/dom/html2/HTMLUListElement.java,
	external/w3c_dom/org/w3c/dom/ls/DOMImplementationLS.java,
	external/w3c_dom/org/w3c/dom/ls/LSException.java,
	external/w3c_dom/org/w3c/dom/ls/LSInput.java,
	external/w3c_dom/org/w3c/dom/ls/LSLoadEvent.java,
	external/w3c_dom/org/w3c/dom/ls/LSOutput.java,
	external/w3c_dom/org/w3c/dom/ls/LSParser.java,
	external/w3c_dom/org/w3c/dom/ls/LSParserFilter.java,
	external/w3c_dom/org/w3c/dom/ls/LSProgressEvent.java,
	external/w3c_dom/org/w3c/dom/ls/LSResourceResolver.java,
	external/w3c_dom/org/w3c/dom/ls/LSSerializer.java,
	external/w3c_dom/org/w3c/dom/ls/LSSerializerFilter.java,
	external/w3c_dom/org/w3c/dom/ranges/DocumentRange.java,
	external/w3c_dom/org/w3c/dom/ranges/Range.java,
	external/w3c_dom/org/w3c/dom/ranges/RangeException.java,
	external/w3c_dom/org/w3c/dom/stylesheets/DocumentStyle.java,
	external/w3c_dom/org/w3c/dom/stylesheets/LinkStyle.java,
	external/w3c_dom/org/w3c/dom/stylesheets/MediaList.java,
	external/w3c_dom/org/w3c/dom/stylesheets/StyleSheet.java,
	external/w3c_dom/org/w3c/dom/stylesheets/StyleSheetList.java,
	external/w3c_dom/org/w3c/dom/traversal/DocumentTraversal.java,
	external/w3c_dom/org/w3c/dom/traversal/NodeFilter.java,
	external/w3c_dom/org/w3c/dom/traversal/NodeIterator.java,
	external/w3c_dom/org/w3c/dom/traversal/TreeWalker.java,
	external/w3c_dom/org/w3c/dom/views/AbstractView.java,
	external/w3c_dom/org/w3c/dom/views/DocumentView.java,
	external/w3c_dom/org/w3c/dom/xpath/XPathEvaluator.java,
	external/w3c_dom/org/w3c/dom/xpath/XPathException.java,
	external/w3c_dom/org/w3c/dom/xpath/XPathExpression.java,
	external/w3c_dom/org/w3c/dom/xpath/XPathNSResolver.java,
	external/w3c_dom/org/w3c/dom/xpath/XPathNamespace.java,
	external/w3c_dom/org/w3c/dom/xpath/XPathResult.java: New files
	from Classpath.

2005-01-31  Anthony Green  <green@redhat.com>

	* gnu/java/net/natPlainDatagramSocketImplPosix.cc (getOption):
	Support IP_MULTICAST_LOOP.
	(setOption): Support IP_MULTICAST_LOOP.

	* gnu/java/net/natPlainSocketImplPosix.cc (setOption): Add
	SO_REUSEADDR support.
	(getOption): Support SO_REUSEADDR.

2005-01-28  Jeroen Frijters  <jeroen@frijters.net>

	PR libgcj/19649
	* java/util/Date.java
	(Date(int,int,int), Date(int,int,int,int,int)): Delegate to other
	constructor.
	(Date(int,int,int,int,int,int)): Fixed to handle out-of-range
	arguments.
	(getTimezoneOffset): Inverted sign.

2005-01-26  Ranjit Mathew  <rmathew@hotmail.com>

	* testsuite/libjava.jacks/jacks.xfail: Update for PR java/19070,
	remove other passing tests and add new XFAILs.

2005-01-24  Tom Tromey  <tromey@redhat.com>

	* java/lang/Class.h (next): Updated documentation.  Renamed to
	'next_or_version'.
	* java/lang/natClassLoader.cc (_Jv_RegisterClasses): Use
	_Jv_CheckABIVersion.
	(_Jv_RegisterClasses_Counted): Likewise.
	(_Jv_RegisterClassHookDefault): Fix starting condition of
	duplicate-checking loop.
	* include/jvm.h (GCJ_VERSION): New define.
	(GCJ_BINARYCOMPAT_ADDITION): Likewise.
	(_Jv_CheckABIVersion): New function.

2005-01-24  Jakub Jelinek  <jakub@redhat.com>

	* Makefile.am (libgij_la_LIBADD): Add -L$(here)/.libs.
	(libgij_la_LDFLAGS): Add.
	* Makefile.in: Rebuilt.

2005-01-24  Roger Sayle  <roger@eyesopen.com>

	PR java/19295
	* testsuite/libjava.compile/PR19295.java: New test case.

2005-01-19  Tom Tromey  <tromey@redhat.com>

	* java/lang/VMCompiler.java (compileClass): Ignore UnknownError.
	* gnu/gcj/runtime/natSharedLibLoader.cc (finalize): Only dlclose
	if 'handler' is valid.

2005-01-17  Tom Tromey  <tromey@redhat.com>

	* java/text/MessageFormat.java (scanString): Changed how quoting
	is handled.
	(scanFormatElement): Likewise.

2004-12-07  Mark Wielaard  <mark@klomp.org>

	* java/text/MessageFormat.java (scanFormat): Chain thrown exception.

2005-01-15  Michael Koch  <konqueror@gmx.de>

	PR libgcj/19444
	* java/net/URI.java
	(AUTHORITY_REGEXP): New regexp constant.
	(AUTHORITY_USERINFO_GROUP): New constant.
	(AUTHORITY_HOST_GROUP): Likewise.
	(AUTHORITY_PORT_GROUP): Likewise.
	(port): Changed default value to -1.
	(parseURI): Parse authority part and initialize host,
	port and userInfo.

2005-01-14  Robin Green  <greenrd@greenrd.org>

	* java/io/File.java (toURI): Generate a URI which we understand.

2005-01-13  Graydon Hoare  <graydon@redhat.com>

	* include/jni.h (_Jv_JNIEnv::bottom_locals): New field.
	* include/jvm.h (_Jv_FreeJNIEnv): Declare.
	* java/lang/natThread.cc (finalize_native): Call _Jv_FreeJNIEnv.
	* jni.cc: Reuse bottom frame between calls, avoid clearing
	frame when no local references are made.

2005-01-13  Michael Koch  <konqueror@gmx.de>

	PR libgcj/17784
	* java/lang/Thread.java
	(Thread): Call checkAccess().
	(stop): Fixed argument name to match javadoc.
	* java/lang/natThread.cc
	(interrupt): Call checkAccess().
	(stop): Likewise.

2005-01-11  Michael Koch  <konqueror@gmx.de>

	PR libgcj/13972
	* java/net/URL.java (URL): Handle specs like
	"/redir?http://domain2.com/index.html" which start with a slash.

2005-01-11  Michael Koch  <konqueror@gmx.de>

	PR libgcj/14012, PR libgcj/14013, PR libgcj/15157, PR libgcj/15509
	* gnu/java/net/BASE64.java,
	gnu/java/net/EmptyX509TrustManager.java,
	gnu/java/net/LineInputStream.java,
	gnu/java/net/protocol/http/Authenticator.java,
	gnu/java/net/protocol/http/ByteArrayRequestBodyWriter.java,
	gnu/java/net/protocol/http/ByteArrayResponseBodyReader.java,
	gnu/java/net/protocol/http/ChunkedInputStream.java,
	gnu/java/net/protocol/http/Cookie.java,
	gnu/java/net/protocol/http/CookieManager.java,
	gnu/java/net/protocol/http/Credentials.java,
	gnu/java/net/protocol/http/HTTPConnection.java,
	gnu/java/net/protocol/http/HTTPDateFormat.java,
	gnu/java/net/protocol/http/HTTPURLConnection.java,
	gnu/java/net/protocol/http/Headers.java,
	gnu/java/net/protocol/http/Request.java,
	gnu/java/net/protocol/http/RequestBodyWriter.java,
	gnu/java/net/protocol/http/Response.java,
	gnu/java/net/protocol/http/ResponseBodyReader.java,
	gnu/java/net/protocol/http/ResponseHeaderHandler.java,
	gnu/java/net/protocol/http/SimpleCookieManager.java,
	gnu/java/net/protocol/http/event/ConnectionEvent.java,
	gnu/java/net/protocol/http/event/ConnectionListener.java,
	gnu/java/net/protocol/http/event/RequestEvent.java,
	gnu/java/net/protocol/http/event/RequestListener.java: New files.
	* gnu/java/net/protocol/http/Connection.java: Removed.
	* gnu/java/net/protocol/http/Handler.java,
	javax/net/ssl/HttpsURLConnection.java: Updated.
	* Makefile.am: Added new files and remove old ones.
	* Makefile.in: Regenerated.

2005-01-11  Tom Tromey  <tromey@redhat.com>

	PR libgcj/18840:
	* java/io/BufferedInputStream.java (read): Repeatedly read to
	fill buffer.
	(refill): Change test to see if buffer must be grown.

2005-01-10  Tom Tromey  <tromey@redhat.com>

	* mauve-libgcj: Exclude some swing tests.

2005-01-10  Tom Tromey  <tromey@redhat.com>

	PR libgcj/12016, PR libgcj/18405, PR libgcj/17738:
	* java/lang/Package.java (getPackages): Use VMClassLoader when
	appropriate.
	(getPackage): Likewise.
	* prims.cc (_Jv_CreateJavaVM): Call
	_Jv_RegisterBootstrapPackages.
	* include/jvm.h (_Jv_RegisterBootstrapPackages): Declare.
	* java/lang/VMClassLoader.java (getPackage): Rewrote.
	(getPackages): Likewise.
	(definedPackages): New field.
	(definePackageForNative): New method.
	* java/lang/Class.h (_Jv_FindClassInCache): Updated.
	* java/lang/natVMClassLoader.cc (loadClass): Updated.
	* defineclass.cc (handleClassBegin): Use
	ClassLoader.findLoadedClass.
	* java/lang/natClassLoader.cc (_Jv_RegisterInitiatingLoader):
	Rewrote.
	(struct _Jv_LoaderInfo): Removed.
	(initiated_classes): Likewise.
	(_Jv_UnregisterClass): Don't use initiated_classes.
	(_Jv_FindClassInCache): Likewise.  Removed 'loader' argument.
	(_Jv_FindClass): Register classes found during boostrap.
	(BOOTSTRAP_CLASS_LIST_SIZE): New define.
	(bootstrap_class_list): New global.
	(bootstrap_index): Likewise.
	(_Jv_RegisterBootstrapPackages): New function.
	* gnu/gcj/runtime/natVMClassLoader.cc (findClass): Call
	definePackageForNative.
	(findClass): Updated.
	* gnu/gcj/runtime/VMClassLoader.java (definePackageForNative):
	New method.

2005-01-10  Tom Tromey  <tromey@redhat.com>

	PR libgcj/18868:
	* include/jvm.h (_Jv_Linker::find_field): Declare.
	(_Jv_Linker::find_field_helper): Likewise.
	* link.cc (find_field_helper): New method.
	(find_field): Likewise.
	(resolve_pool_entry): Use it.  Throw NoSuchFieldError when field
	not found.
	(link_symbol_table): Use find_field.

2005-01-10  Michael Koch  <konqueror@gmx.de>

	PR libgcj/18014
	* java/util/Locale.java (Locale): Don't uppercase variant.
	(getISOCountries): Fixed typo in javadoc.

2005-01-10  Michael Koch  <konqueror@gmx.de>

	* java/util/SimpleTimeZone.java (checkRule):
	Throw IllegalArgumentException on invalid month values.
	* java/util/TimeZone.java (setID):
	Throw NullPointerException if needed.

2005-01-10  Andrew John Hughes  <gnu_andrew@member.fsf.org>

	* java/util/SimpleTimeZone.java (getOffset):
	offset end date with daylight savings

2005-01-10  Ranjit Mathew  <rmathew@hotmail.com>

	* testsuite/libjava.compile/PR19277.java: New file for PR java/19277.
	* testsuite/libjava.compile/PR19277.xfail: Likewise.

2005-01-09  Michael Koch  <konqueror@gmx.de>

	PR libgcj/17069
	* java/net/InetAddress.java (getLocalHost):
	Throw UnknownHostException if local hostname cannot be determined.

2005-01-06  Tom Tromey  <tromey@redhat.com>

	* java/lang/ClassLoader.java (findClass): Fixed documentation.

2005-01-07  Michael Koch  <konqueror@gmx.de>

	PR libgcj/18115
	* java/nio/Buffer.java (address): New field.
	* java/nio/DirectByteBufferImpl.java (address): Removed.
	* java/nio/MappedByteBufferImpl.java (address): Likewise.
	* java/nio/CharViewBufferImpl.java (CharViewBufferImpl):
	Explicitly initialize Buffer.address if needed.
	* java/nio/DoubleViewBufferImpl.java (DoubleViewBufferImpl): Likewise.
	* java/nio/FloatViewBufferImpl.java (FloatViewBufferImpl): Likewise.
	* java/nio/IntViewBufferImpl.java (IntViewBufferImpl): Likewise.
	* java/nio/LongViewBufferImpl.java (LongViewBufferImpl): Likewise.
	* java/nio/ShortViewBufferImpl.java (ShortViewBufferImpl): Likewise.
	* jni.cc (_Jv_JNI_GetDirectBufferAddress): Don't assume buffer is a
	DirectByteBufferImpl object.
	(_Jv_JNI_GetDirectBufferCapacity): Likewise.
	* testsuite/libjava.jni/directbuffer.c,
	testsuite/libjava.jni/directbuffer.java,
	testsuite/libjava.jni/directbuffer.out,
	testsuite/libjava.jni/bytebuffer.c,
	testsuite/libjava.jni/bytebuffer.java,
	testsuite/libjava.jni/bytebuffer.out: New files.

2005-01-05  Tom Tromey  <tromey@redhat.com>

	* java/util/zip/ZipEntry.java (setCompressedSize): Allow any
	argument.
	(compressedSize): Now 'long'.  Default to -1.
	(getCompressedSize): Rewrote.
	* java/util/zip/DeflaterOutputStream.java (deflate): Don't
	deflate at all if we need input.

2005-01-05  Tom Tromey  <tromey@redhat.com>

	PR libgcj/15719:
	* interpret.cc (run) <insn_dcmpl, insn_dcmpg>: Set tmpval
	correctly.

2005-01-05  Tom Tromey  <tromey@redhat.com>

	* java/lang/natRuntime.cc (insertSystemProperties): Set
	java.ext.dirs earlier.

2005-01-05  Eric Botcazou  <ebotcazou@libertysurf.fr>

	* java/lang/natObject.cc (_Jv_ObjectCheckMonitor): Initialize the
	sync_info element of the object if needed.

2005-01-03  Eric Botcazou  <ebotcazou@libertysurf.fr>

	* testsuite/libjava.lang/Process_4.java (Process_4): Expect only
	a non-zero exit status from 'false'.

2005-01-01  Bryce McKinlay  <mckinlay@redhat.com>

	* include/boehm-gc.h: Include gc_ext_config.h, not gc_config.h.
