summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--winsup/cygwin/ChangeLog4
-rw-r--r--winsup/cygwin/signal.cc6
2 files changed, 7 insertions, 3 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog
index 113ef7e63..9d0a8db49 100644
--- a/winsup/cygwin/ChangeLog
+++ b/winsup/cygwin/ChangeLog
@@ -1,3 +1,7 @@
+2009-12-18 Eric Blake <ebb9@byu.net>
+
+ * signal.cc (nanosleep): Fix bug in previous patch.
+
2009-12-18 Corinna Vinschen <corinna@vinschen.de>
Throughout, replace hMainProc with GetCurrentProcess/NtCurrentProcess
diff --git a/winsup/cygwin/signal.cc b/winsup/cygwin/signal.cc
index 63267da0c..e12f63e2d 100644
--- a/winsup/cygwin/signal.cc
+++ b/winsup/cygwin/signal.cc
@@ -102,11 +102,11 @@ nanosleep (const struct timespec *rqtp, struct timespec *rmtp)
{
/* Divide user's input into transactions no larger than 49.7
days at a time. */
- if (sec > HIRES_DELAY_MAX)
+ if (sec > HIRES_DELAY_MAX / 1000)
{
- req = ((HIRES_DELAY_MAX * 1000 + resolution - 1)
+ req = ((HIRES_DELAY_MAX + resolution - 1)
/ resolution * resolution);
- sec -= HIRES_DELAY_MAX;
+ sec -= HIRES_DELAY_MAX / 1000;
}
else
{