diff options
author | Greg Lewis <glewis@FreeBSD.org> | 2007-01-22 16:50:22 +0000 |
---|---|---|
committer | Greg Lewis <glewis@FreeBSD.org> | 2007-01-22 16:50:22 +0000 |
commit | 22341640938691b0eda94ec701d05734d8d01401 (patch) | |
tree | 64063af4c3873c22c753211ccbcd41ad74b7bd4f /java/jdk15/files/patch-vm::os_bsd.cpp | |
parent | Simple xfce editor (diff) |
. Update to patchset 4.
Notes
Notes:
svn path=/head/; revision=182990
Diffstat (limited to 'java/jdk15/files/patch-vm::os_bsd.cpp')
-rw-r--r-- | java/jdk15/files/patch-vm::os_bsd.cpp | 32 |
1 files changed, 0 insertions, 32 deletions
diff --git a/java/jdk15/files/patch-vm::os_bsd.cpp b/java/jdk15/files/patch-vm::os_bsd.cpp index f9d9f795f508..25bd71db866c 100644 --- a/java/jdk15/files/patch-vm::os_bsd.cpp +++ b/java/jdk15/files/patch-vm::os_bsd.cpp @@ -11,35 +11,3 @@ $FreeBSD$ #define EXTENSIONS_DIR "/lib/ext" #define ENDORSED_DIR "/lib/endorsed" -@@ -1968,16 +1968,23 @@ - - static int os_sleep(jlong millis, bool interruptible) { - int res; -- if (!interruptible) { -- do { -- res = os_nanosleep(&millis); -- } while ((res == OS_ERR) && (errno == EINTR) && (millis > 0)); -- } else { -- INTERRUPTIBLE_NORESTART_VM(os_nanosleep(&millis), res, os::Bsd::clear_interrupted); -+ -+ while (millis > 0) { -+ if (!interruptible) { -+ res = os_nanosleep(&millis); -+ } else { -+ INTERRUPTIBLE_NORESTART_VM(os_nanosleep(&millis), res, os::Bsd::clear_interrupted); -+ } -+ // INTERRUPTIBLE_NORESTART_VM returns res == OS_INTRPT for thread.Interrupt -+ -+ if((res == OS_ERR) && (errno == EINTR)) { -+ if(millis <= 0) -+ return OS_OK; -+ } else -+ return res; - } -- // INTERRUPTIBLE_NORESTART_VM returns res == OS_INTRPT for thread.Interrupt - -- return res; -+ return OS_OK; - } - - int os::Bsd::naked_sleep() { |