From 06e7bf1f8582c19bb4caeeb903956f8ae9aa3787 Mon Sep 17 00:00:00 2001 From: Alan Bateman Date: Thu, 5 Jun 2008 14:50:28 +0100 Subject: [PATCH] 6596323: (fc) ClosedByInterruptException not thrown by the interrupt method (lnx) Reviewed-by: sherman --- jdk/src/share/classes/sun/nio/ch/NativeThreadSet.java | 2 +- jdk/src/solaris/classes/sun/nio/ch/NativeThread.java | 4 ++-- jdk/src/windows/classes/sun/nio/ch/NativeThread.java | 2 +- jdk/test/java/nio/channels/AsyncCloseAndInterrupt.java | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/jdk/src/share/classes/sun/nio/ch/NativeThreadSet.java b/jdk/src/share/classes/sun/nio/ch/NativeThreadSet.java index ee3e393af48..7b9ba6b8b0d 100644 --- a/jdk/src/share/classes/sun/nio/ch/NativeThreadSet.java +++ b/jdk/src/share/classes/sun/nio/ch/NativeThreadSet.java @@ -43,7 +43,7 @@ class NativeThreadSet { // int add() { long th = NativeThread.current(); - if (th <= 0) + if (th == -1) return -1; synchronized (this) { int start = 0; diff --git a/jdk/src/solaris/classes/sun/nio/ch/NativeThread.java b/jdk/src/solaris/classes/sun/nio/ch/NativeThread.java index 3e947694598..f8dc8460238 100644 --- a/jdk/src/solaris/classes/sun/nio/ch/NativeThread.java +++ b/jdk/src/solaris/classes/sun/nio/ch/NativeThread.java @@ -34,14 +34,14 @@ package sun.nio.ch; // upon which Java threads are built, and defines a simple signal mechanism // that can be used to release a native thread from a blocking I/O operation. // On systems that do not require this type of signalling, the current() method -// always returns zero and the signal(long) method has no effect. +// always returns -1 and the signal(long) method has no effect. class NativeThread { // Returns an opaque token representing the native thread underlying the // invoking Java thread. On systems that do not require signalling, this - // method always returns zero. + // method always returns -1. // static native long current(); diff --git a/jdk/src/windows/classes/sun/nio/ch/NativeThread.java b/jdk/src/windows/classes/sun/nio/ch/NativeThread.java index a5653241ffe..52ade3c072c 100644 --- a/jdk/src/windows/classes/sun/nio/ch/NativeThread.java +++ b/jdk/src/windows/classes/sun/nio/ch/NativeThread.java @@ -31,7 +31,7 @@ package sun.nio.ch; class NativeThread { - static long current() { return 0; } + static long current() { return -1; } static void signal(long nt) { } diff --git a/jdk/test/java/nio/channels/AsyncCloseAndInterrupt.java b/jdk/test/java/nio/channels/AsyncCloseAndInterrupt.java index 8ec350cff01..d0b08694651 100644 --- a/jdk/test/java/nio/channels/AsyncCloseAndInterrupt.java +++ b/jdk/test/java/nio/channels/AsyncCloseAndInterrupt.java @@ -22,7 +22,7 @@ */ /* @test - * @bug 4460583 4470470 4840199 6419424 + * @bug 4460583 4470470 4840199 6419424 6596323 * @summary Comprehensive test of asynchronous closing and interruption * @author Mark Reinhold */