diff options
-rw-r--r-- | libjava/ChangeLog | 8 | ||||
-rw-r--r-- | libjava/java/nio/channels/spi/AbstractInterruptibleChannel.java | 11 |
2 files changed, 15 insertions, 4 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog index 690a4f7..409bf3b 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,5 +1,13 @@ 2003-12-02 Michael Koch <konqueror@gmx.de> + * java/nio/channels/spi/AbstractInterruptibleChannel.java + (opened): Removed. + (closed): New field. + (close): Check of channel is closed already. + (isOpen): Return !closed. + +2003-12-02 Michael Koch <konqueror@gmx.de> + * gnu/java/nio/DatagramChannelImpl.java (blocking): Initialize with true by default. * gnu/java/nio/ServerSocketChannelImpl.java diff --git a/libjava/java/nio/channels/spi/AbstractInterruptibleChannel.java b/libjava/java/nio/channels/spi/AbstractInterruptibleChannel.java index dd4177a..0cf798e 100644 --- a/libjava/java/nio/channels/spi/AbstractInterruptibleChannel.java +++ b/libjava/java/nio/channels/spi/AbstractInterruptibleChannel.java @@ -49,7 +49,7 @@ import java.nio.channels.InterruptibleChannel; public abstract class AbstractInterruptibleChannel implements Channel, InterruptibleChannel { - boolean opened = true; + private boolean closed; /** * Initializes the channel. @@ -72,8 +72,11 @@ public abstract class AbstractInterruptibleChannel */ public final void close () throws IOException { - opened = false; - implCloseChannel (); + if (!closed) + { + implCloseChannel(); + closed = true; + } } /** @@ -101,6 +104,6 @@ public abstract class AbstractInterruptibleChannel */ public final boolean isOpen () { - return opened; + return !closed; } } |