2003-02-21 Michael Koch <konqueror@gmx.de>
* gnu/java/nio/natSocketChannelImpl.cc:
Reverse logic for DISABLE_JAVA_NET. Thanks to Krister Walfridsson
<cato@df.lth.se> for pointing to it.
From-SVN: r63212
2003-02-20 Raif S. Naffah <raif@fl.net.au>
* java/math/BigInteger.java (euclidInv): Take result array as an
argument. Updated all callers.
(modInverse): Removed unused variables.
From-SVN: r63170
2003-02-19 Michael Koch <konqueror@gmx.de>
* gnu/java/nio/natSocketChannelImpl.cc:
Added support for platforms without network support.
From-SVN: r63155
* gnu/java/nio/ByteBufferImpl.java
(ByteBufferImpl): Renamed two variables.
* gnu/java/nio/CharBufferImpl.java
(CharBufferImpl): Renamed two variables.
* gnu/java/nio/DoubleBufferImpl.java
(DoubleBufferImpl): Renamed two variables.
* gnu/java/nio/FloatBufferImpl.java
(FloatBufferImpl): Renamed two variables.
* gnu/java/nio/IntBufferImpl.java
(IntBufferImpl): Renamed two variables.
* gnu/java/nio/LongBufferImpl.java
(LongBufferImpl): Renamed two variables.
* gnu/java/nio/ShortBufferImpl.java
(ShortBufferImpl): Renamed two variables.
* java/nio/CharBuffer.java
(wrap): Fixed arguments to CharBufferImpl constructor.
(hasArray): Only not read-only buffers have backing arrays.
(length): Documentation added.
(subSequence): Documentation added.
* java/nio/DoubleBuffer.java
(hasArray): Only not read-only buffers have backing arrays.
* java/nio/FloatBuffer.java
(hasArray): Only not read-only buffers have backing arrays.
* java/nio/IntBuffer.java
(hasArray): Only not read-only buffers have backing arrays.
* java/nio/LongBuffer.java
(hasArray): Only not read-only buffers have backing arrays.
* java/nio/ShortBuffer.java
(hasArray): Only not read-only buffers have backing arrays.
From-SVN: r63101
* gnu/awt/j2d/Graphics2DImpl.java
(getFontRenderContext): New method.
(drawGlyphVector): New method.
* java/awt/Graphics2D.java
(getFontRenderContext): New abstract method.
(drawGlyphVector): New abstract method.
From-SVN: r63097
2003-02-18 Hans Boehm <Hans.Boehm@hp.com>
* gnu/awt/xlib/XToolkit.java (getFontMetrics): initialize
if necessary.
* gnu/java/awt/peer/gtk/GtkButtonPeer.java,
gnu/java/awt/peer/gtk/GtkTextAreaPeer.java,
gnu/java/awt/peer/gtk/GtkTextFieldPeer.java,
jni/gtk-peer/gnu_java_awt_peer_gtk_GtkButtonPeer.c,
jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextAreaPeer.c,
jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextFieldPeer.c
(setFont, gtkSetFont): add.
gnu/java/awt/peer/gtk/GtkComponentPeer.java (GtkComponentPeer):
Propagate font to peer. (setFont): add FIXME comment.
* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextAreaPeer.c
(gtkTextGetSize): fix height, width computation.
* gnu/java/awt/peer/gtk/GtkFontPeer.java (GtkFontPeer):
Make X font name a bit less bogus.
* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollBarPeer.c
(post_adjustment_event): Pass on GTK_SCROLL_NONE.
* java/awt/Scrollbar.java (setValues): Fix visibleAmount range check.
(processAdjustmentEvent): Adjust value.
* java/awt/FlowLayout.java (layoutContainer) Fix 2 indexing and one
logic errors.
* java/awt/Component.java (setVisible, show, hide): Call show and
hide methods in subclasses.
(getPreferredSize): don't set prefSize before we have peer.
* java/awt/TextArea.java, java/awt/TextField.java (getPreferredSize):
Guess (0,0) if we don't have peer.
From-SVN: r63077
2003-02-17 Ranjit Mathew <rmathew@hotmail.com>
* java/util/Properties.java (store): Move the code formerly in
list(), into this method.
(list (PrintStream)): Just call list (PrintWriter) with a
PrintWriter object constructed from the given PrintStream object.
(list (PrintWriter)): Emulate the output of Properties.list()
as found in JDK 1.3/1.4.
From-SVN: r63006
* java/awt/CheckboxMenuItem.java
(CheckBoxMenuItem): Dont implement Serializable.
(getListeners): New method,
(getItemListeners): New method.
* java/awt/Choice.java
(getListeners): New method,
(getItemListeners): New method.
* java/awt/Container.java
(getListeners): Added exception documentation.
(setFocusTraversalKeys): Throw exceptions, added documentattion.
(getFocusTraversalKeys): Added documentation.
(areFocusTraversalKeysSet): Added documentation.
(applyComponentOrientation): Added documentation.
* java/awt/ContainerOrderFocusTraversalPolicy.java
(implicitDownCycleTraversal): Renamed from downCycle for
serialization.
(ContainerOrderFocusTraversalPolicy): Added documentation.
(accept): Reformated.
* java/awt/Dialog.java
(Dialog): Dont implement Serializable.
(Dialog): Added documentation.
* java/awt/Font.java
(Font): Dont use absolute class name.
* java/awt/Frame.java
(Frame): Font implement Serializable.
* java/awt/List.java
(getListeners): New method,
(getActionListeners): New method.
(getItemListeners): New method.
* java/awt/Menu.java
(countItems): New deprecated method.
* java/awt/Scrollbar.java
(getListeners): New method,
(getAdjustmentListeners): New method,
* java/awt/TextComponent.java
(getListeners): New method,
(getTextListeners): New method,
* java/awt/TextField.java
(getListeners): New method,
(getActionListeners): New method.
* java/awt/Window.java
(windowFocusListener): New member variable.
(windowStateListener): New member variable.
(getWindowFocusListeners): New method.
(getWindowStateListeners): New method.
(addWindowFocusListener): New method.
(addWindowStateListener): New method.
(removeWindowFocusListener): New method.
(removeWindowStateListener): New method.
* java/awt/datatransfer/DataFlavor.java
(isRepresentationClassByteBuffer): New method.
(isRepresentationClassCharBuffer): New method.
(isRepresentationClassReader): New method.
From-SVN: r62933
* libjava.mauve/mauve.exp (mauve_compute_uses): Add inner class
object files by changing all occurances of $ to ^.
(test_mauve): Replace ^ with $ for class file names and quote
them with "'"s.
From-SVN: r62914
* java/math/BigDecimal.java (BigDecimal(String)): Always set scale to
zero when there is an exponent and the significant is zero.
(divide): Always set scale to newScale even in special ZERO case.
From-SVN: r62908
2003-02-14 Michael Koch <konqueror@gmx.de>
* gnu/java/nio/natServerSocketChannelImpl.cc: Removed.
* gnu/java/nio/ServerSocketChannelImpl.java
(SocketAccept): Removed.
(accept): Commented out use of SocketAccept.
From-SVN: r62898
* verify.cc (state::seen_subrs): New field.
(state::state): Initialize it.
(state::clean_subrs): New method.
(state::~state): Call it.
(state::copy): Copy subroutine list.
(state::add_subr): New method.
(state::merge): Only register a change if the current subroutine
hasn't yet been noted.
From-SVN: r62878
* gnu/java/nio/FileChannelImpl.java
(lengthInternal): Must be native.
(size): Check if channel is already closed.
(implCloseChannel): Reformated.
(read): w was unused, removed it.
(read): Removed.
(read): New method.
(write): New method.
(map): Check arguments.
(force): Throws IOException, check if channel is closed.
(transferTo): New method.
(transferFrom): New method.
(lock): New method.
(tryLock): New method.
(position): New method.
(truncate): New method.
(nio_mmap_file): Uncommented.
(nio_munmap_file): Uncommented.
(nio_msync): Uncommented.
* gnu/java/nio/natFileChannelImpl.cc: New file.
From-SVN: r62841
* java/nio/ByteBuffer.java
(endian): New member variable.
(get): New methods.
(equals): New method.
(compareTo): New method.
(order): New methods.
(compact): New method.
(isDirect): New method.
(slice): New method.
(duplicate): New method.
(asReadOnlyBuffer): New method.
(asCharBuffer): New method.
(asDoubleBuffer): New method.
(asFloatBuffer): New method.
(asIntBuffer): New method.
(asLongBuffer): New method.
(asShortBuffer): New method.
(get*): New methods.
(put*): New methods.
(toString): New method.
* java/nio/CharBuffer.java
(CharBuffer): Implement Comparable instead of Cloneable.
(get): May not be final.
(put): May not be final.
From-SVN: r62836
2002-02-13 Ranjit Mathew <rmathew@hotmail.com>
* gnu/gcj/runtime/NameFinder.java (createStackTraceElement): Use
lastIndexOf( ) instead of indexOf( ) to find the colon before
the line number, because Win32 file names might contain a
drive letter and a colon at the start of an absolute path.
From-SVN: r62834
* java/net/NetPermission.java
(NetPermission): Make doucmentation match the method declaration.
* java/net/NetworkInterface.java
(equals): Reformated for GNU coding style.
* java/net/ServerSocket.java: Merged with classpath.
* java/net/Socket.java: Partly merged with classpath (Added some @since).
* java/net/SocketImpl.java
(localPort): Merged with classpath (initialize with -1).
* java/net/SocketPermission.java: Merged with classpath (reindented).
* java/net/URLDecoder.java: Merged with classpath (reindented).
From-SVN: r62824
2003-02-12 Ranjit Mathew <rmathew@hotmail.com>
* include/win32.h: Include ws2tcpip.h instead of
winsock.h to obtain definition of the socklen_t type.
Remove IP_TOS definition - not needed with ws2tcpip.h
(_Jv_connect): Correct slight formatting error.
From-SVN: r62801
2003-02-12 Ranjit Mathew <rmathew@hotmail.com>
* jni.cc (_Jv_LookupJNIMethod): Modify to accept the
size of the arguments for a JNI function. For Win32,
modify to search for all forms of possible exported
names of an stdcall JNI function.
(_Jv_JNIMethod::call): Modify to calculate the size
of the arguments passed to a JNI function and pass
it to _Jv_LookupJNIMethod.
From-SVN: r62796
* java/nio/Buffer.java
(cap, lim, pos, mark): Made private
(Buffer): Added package private constructor.
* java/nio/ByteBuffer.java
(ByteBuffer): Implements Cloneable.
(offset): New member variable.
(readOnly): New member variable.
(backing_buffer): New member variable.
(allocateDirect): Throw exception and tell that direct buffers are
not supported yet, documentation added.
(allocate): Documentation added.
(wrap): Documentation added.
(ByteBuffer): New constructor.
(hasArray): New method.
(array): New method.
(arrayOffset): New method.
(get): Documentation added.
(put): Documentation added.
* java/nio/CharBuffer.java
(CharBuffer): New constructor.
(compareTo): Don't access member variables of Buffer directly.
* java/nio/DoubleBuffer.java
(allocateDirect): Throw exception and tell that direct buffers are
not supported yet.
* java/nio/FloatBuffer.java
(allocateDirect): Throw exception and tell that direct buffers are
not supported yet.
* java/nio/IntBuffer.java
(allocateDirect): Throw exception and tell that direct buffers are
not supported yet.
* java/nio/LongBuffer.java
(allocateDirect): Throw exception and tell that direct buffers are
not supported yet.
* java/nio/MappedByteBuffer.java
(MappedByteBuffer): New method.
(force): New method.
(isLoaded): New method.
(load): New method.
* java/nio/ShortBuffer.java
(allocateDirect): Throw exception and tell that direct buffers are
not supported yet.
From-SVN: r62685
* java/nio/DoubleBuffer.java
(DoubleBuffer): Implements Comparable.
(endian): Removed.
(array_offset): New member variable.
(DoubleBuffer): New constuctor.
(get): May not be final.
(put): May not be final.
(arrayOffset): Implemented.
(order): Made abstract.
(order): Removed.
(as*Buffer): Removed.
(get*): Removed.
(put*): Removed.
* java/nio/FloatBuffer.java
(FloatBuffer): Implements Comparable.
(endian): Removed.
(array_offset): New member variable.
(FloatBuffer): New constuctor.
(get): May not be final.
(put): May not be final.
(arrayOffset): Implemented.
(order): Made abstract.
(order): Removed.
(as*Buffer): Removed.
(get*): Removed.
(put*): Removed.
* java/nio/IntBuffer.java
(IntBuffer): Implements Comparable.
(endian): Removed.
(array_offset): New member variable.
(IntBuffer): New constuctor.
(get): May not be final.
(put): May not be final.
(arrayOffset): Implemented.
(order): Made abstract.
(order): Removed.
(as*Buffer): Removed.
(get*): Removed.
(put*): Removed.
* java/nio/LongBuffer.java
(LongBuffer): Implements Comparable.
(endian): Removed.
(array_offset): New member variable.
(LongBuffer): New constuctor.
(get): May not be final.
(put): May not be final.
(arrayOffset): Implemented.
(order): Made abstract.
(order): Removed.
(as*Buffer): Removed.
(get*): Removed.
(put*): Removed.
* java/nio/ShortBuffer.java
(ShortBuffer): Implements Comparable.
(endian): Removed.
(array_offset): New member variable.
(ShortBuffer): New constuctor.
(get): May not be final.
(put): May not be final.
(arrayOffset): Implemented.
(order): Made abstract.
(order): Removed.
(as*Buffer): Removed.
(get*): Removed.
(put*): Removed.
From-SVN: r62684
* java/nio/charset/IllegalCharsetNameException.java
(serialVersionUID): New member variable.
(charsetName): New member variable.
(IllegalCharsetException): New implementation.
(getCharsetName): New implementation.
* java/nio/charset/UnsupportedCharsetException.java
(serialVersionUID): New member variable.
(charsetName): New member variable.
(UnsupportedCharsetException): New implementation.
(getCharsetName): New implementation.
From-SVN: r62680
2003-02-10 Raif S. Naffah <raif@fl.net.au>
* gnu/java/security/provider/SHA1PRNG.java (ensureIsSeeded): new
method used to ensure seeding has occurred and that a specific
seed can be set and used.
From-SVN: r62660
2003-02-10 Raif S. Naffah <raif@fl.net.au>
* java/math/BigInteger.java:
Updated notice to include years 2002 and 3.
Added 2 private (int) arrays with values from the HAC (Handbook of
Applied Cryptography -A. Menezes & al): k[] that contains bit lengths
and t[] that contains nbr. of tests --used in isProbablePrime().
* java/math/BigInteger.java (make(long)): Merged into valueOf(long).
* java/math/BigInteger.java (make(int[],int), add(int,int),
add(BI,BI,int), times(BI,int), divide(long,long,BI,BI,int), gcd(BI),
isProbablePrime(int), shift(BI,int), valueOf(String,int), neg(BI),
bitOp(int,BI,BI), and(BI,int)): Use valueOf(long) instead of
make(long).
* java/math/BigInteger.java (euclidInv): Reduce number of work vars
(euclidInv(int,int,int)): Now returns an array of 2 ints instead of 3.
(euclidInv(BI,BI,BI)): Used to return an array of 2 BIs; now accepts 6
BIs and returns void.
(modInverse(BI)): Use new signatures of euclidInv().
* java/math/BigInteger.java (isProbablePrime(int)): Use divide() with
static small primes instead of remainder().
Use pre-computed max nbr of trials based on bitlength of BI to test.
Use pre-computed small primes for the trial tests instead of random
numbers.
* java/math/BigInteger.java (isOdd, isMinusOne, pow): Removed.
not used.
* java/math/BigInteger.java (format(int,StringBuffer)): Removed
invoacation of MPN.chars_per_word(). not used.
* java/math/BigInteger.java (gcd(int,int)): Declared 'tmp' once as
local var and used where needed.
* java/math/BigInteger.java (modPow(BI,BI)): Fixed spelling.
Combined declaration with initialisation of locals.
Removed unused var.
* java/math/BigInteger.java: Style changes
(pow(int)): Removed 'else' keyword.
(toString(int)): idem.
(doubleValue()): idem.
(bitLength()): idem.
(equals(Object)): Use static methods name in same class w/o prepending
class name.
(doubleValue()): idem.
(setNegative(BI)): idem.
(negate()): idem.
(and(BI,int)): idem.
(and(BI)): idem.
(gcd(BI)): idem.
(byteArrayToIntArray()): Removed casting to (int). this is
std. behaviour.
(canonicalize()): idem.
(alloc(int)): Always instantiate a new BI.
From-SVN: r62656
* java/util/jar/JarFile.java (JarFile(String, boolean)): Read manifest
when verify is true.
(JarFile(File, boolean)): Likewise.
(manifestRead): Set manifestRead field correctly.
From-SVN: r62545
2003-02-07 Stephen Crawley <crawley@dstc.edu.au>
* java/math/BigDecimal(valueOf): fix DiagBigDecimal val008, val013
tests; see patch #1016 on Savannah.
2003-02-07 Stephen Crawley <crawley@dstc.edu.au>
* java/math/BigDecimal.java (BigDecimal): enhance parsing of exponents
(toString): do not return Strings starting with . and - erroneously.
Improves Mauve results to 12 of 600 instead of 16 of 338 on
DiagBigDecimal.
From-SVN: r62540
2003-02-03 Ranjit Mathew <rmathew@hotmail.com>
* java/lang/natRuntime.cc (java::lang::Runtime::_load)): Take care
of the fact that on Win32, JNI_OnLoad is an "stdcall" function and
could also have been exported as "JNI_OnLoad@8" (MinGW) or
"_JNI_OnLoad@8" (MSVC).
From-SVN: r62348
* jni.cc (_Jv_JNI_NewObjectArray): Check that initializer can be
cast to element type.
(_Jv_JNI_SetObjectArrayElement): Check array bounds.
(_Jv_JNI_GetObjectArrayElement): Likewise.
From-SVN: r62210
* aclocal.m4, configure, include/config.h.in: Rebuilt.
* acinclude.m4 (CHECK_FOR_BROKEN_MINGW_LD): Resurrected; was in
aclocal.m4 and lost in some merge.
From-SVN: r62188
2003-01-28 Oscar Pearce <oscar@pearceenterprises.com>
* java/awt/Component.java (processPaintEvent): Dispose of Graphics
object when finished.
From-SVN: r62052
2003-01-28 Ranjit Mathew <rmathew@hotmail.com>
Fixes PR java/9254:
* include/win32-threads.h (_Jv_Mutex_t): Convert to a struct
additionally containing id of the owner thread as well as
the number of nested times the thread has acquired the mutex.
(_Jv_MutexInit): Initialise owner thread id and refcount to 0.
(_Jv_MutexDestroy): Reset owner thread id and refcount to 0.
(_Jv_MutexUnlock): Check if really the owner thread, reset
owner thread id to 0 before leaving, if leaving for the last
time.
(_Jv_MutexLock): Set owner thread id in the mutex and increment
refcount.
(_Jv_ThreadYield): Yield using a call to Sleep(0).
* win32-threads.cc (_Jv_CondWait): Check if really owner of
the passed mutex.
Pass handle of the broadcast event, instead of a pointer to it
in Win32 ResetEvent( ) call.
Remove incorrect return values.
(_Jv_CondDestroy): Close both event handles and delete
critical section.
(_Jv_CondNotify): Check if really the owner thread.
(_Jv_CondNotifyAll): Check if really the owner thread.
(_Jv_InitThreads): Change daemon_cond to a manual-reset event.
(really_start): Use SetEvent( ) to signal daemon_cond.
(_Jv_ThreadWait): Remove SignalObjectAndWait( ) and use
WaitForSingleObject( ) instead to wait for daemon_cond to be
signalled.
From-SVN: r62033