From: Michael Koch Date: Thu, 26 Feb 2004 19:45:51 +0000 (+0000) Subject: 2004-02-26 Michael Koch X-Git-Tag: releases/gcc-4.0.0~9824 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f57db409bc0a3da9ec6e59ce72681612f7fe74ae;p=thirdparty%2Fgcc.git 2004-02-26 Michael Koch * gnu/java/nio/FileLockImpl.java (finalize): Made protected. * java/nio/channels/FileChannel.java (MapMode.READ_ONLY): Made final. (MapMode.READ_WRITE): Made final. (MapMode.PRIVATE): Made final. * java/nio/channels/SocketChannel.java (open): Simplified code. * java/nio/channels/spi/AbstractSelectableChannel.java (registered): Unused, removed. (keyFor): Check channel is open, only locate key and not add a new one. (register): Don't delete attachments. From-SVN: r78519 --- diff --git a/libjava/ChangeLog b/libjava/ChangeLog index 5984f37c9d2e..7be2aebebb00 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,3 +1,19 @@ +2004-02-26 Michael Koch + + * gnu/java/nio/FileLockImpl.java + (finalize): Made protected. + * java/nio/channels/FileChannel.java + (MapMode.READ_ONLY): Made final. + (MapMode.READ_WRITE): Made final. + (MapMode.PRIVATE): Made final. + * java/nio/channels/SocketChannel.java + (open): Simplified code. + * java/nio/channels/spi/AbstractSelectableChannel.java + (registered): Unused, removed. + (keyFor): Check channel is open, only locate key + and not add a new one. + (register): Don't delete attachments. + 2004-02-26 Michael Koch * gnu/java/awt/ComponentDataBlitOp.java diff --git a/libjava/gnu/java/nio/FileLockImpl.java b/libjava/gnu/java/nio/FileLockImpl.java index 9384bf612c8f..eff3320770f4 100644 --- a/libjava/gnu/java/nio/FileLockImpl.java +++ b/libjava/gnu/java/nio/FileLockImpl.java @@ -68,7 +68,7 @@ public class FileLockImpl extends FileLock this.fd = fd; } - public void finalize() + protected void finalize() { try { diff --git a/libjava/java/nio/channels/FileChannel.java b/libjava/java/nio/channels/FileChannel.java index 9def46316521..6604e99744e3 100644 --- a/libjava/java/nio/channels/FileChannel.java +++ b/libjava/java/nio/channels/FileChannel.java @@ -53,9 +53,9 @@ public abstract class FileChannel extends AbstractInterruptibleChannel { int m; - public static MapMode READ_ONLY = new MapMode(0); - public static MapMode READ_WRITE = new MapMode(1); - public static MapMode PRIVATE = new MapMode(2); + public static final MapMode READ_ONLY = new MapMode(0); + public static final MapMode READ_WRITE = new MapMode(1); + public static final MapMode PRIVATE = new MapMode(2); /** * Initializes the MapMode. diff --git a/libjava/java/nio/channels/SocketChannel.java b/libjava/java/nio/channels/SocketChannel.java index c22eb1d1945e..93633002e513 100644 --- a/libjava/java/nio/channels/SocketChannel.java +++ b/libjava/java/nio/channels/SocketChannel.java @@ -87,11 +87,7 @@ abstract public class SocketChannel extends AbstractSelectableChannel public static SocketChannel open (SocketAddress remote) throws IOException { SocketChannel ch = open (); - - if (ch.connect (remote)) - { - } - + ch.connect(remote); return ch; } diff --git a/libjava/java/nio/channels/spi/AbstractSelectableChannel.java b/libjava/java/nio/channels/spi/AbstractSelectableChannel.java index 76c6c2b899f8..0a872bc7bc85 100644 --- a/libjava/java/nio/channels/spi/AbstractSelectableChannel.java +++ b/libjava/java/nio/channels/spi/AbstractSelectableChannel.java @@ -48,7 +48,6 @@ import java.util.ListIterator; public abstract class AbstractSelectableChannel extends SelectableChannel { - private int registered; private boolean blocking = true; private Object LOCK = new Object(); private SelectorProvider provider; @@ -135,9 +134,15 @@ public abstract class AbstractSelectableChannel extends SelectableChannel */ public final SelectionKey keyFor(Selector selector) { + if (! isOpen()) + return null; + try { - return register (selector, 0, null); + synchronized(blockingLock()) + { + return locate (selector); + } } catch (Exception e) { @@ -196,7 +201,8 @@ public abstract class AbstractSelectableChannel extends SelectableChannel if (key != null) { - key.attach (att); + if (att != null) + key.attach (att); } else {