diff options
author | dgp <dgp@users.sourceforge.net> | 2018-02-06 21:11:01 (GMT) |
---|---|---|
committer | dgp <dgp@users.sourceforge.net> | 2018-02-06 21:11:01 (GMT) |
commit | 90806d35252578f723b986809885e857c5aea380 (patch) | |
tree | 2b08278cadb82b497938a0cef00e60000c9737d3 /generic/tclTimer.c | |
parent | 24886887f902f1b5a09c094110c6a4e75afbcea2 (diff) | |
parent | 185cdc39c6ed70ecf07f8427be94091fffc05238 (diff) | |
download | tcl-90806d35252578f723b986809885e857c5aea380.zip tcl-90806d35252578f723b986809885e857c5aea380.tar.gz tcl-90806d35252578f723b986809885e857c5aea380.tar.bz2 |
merge 8.7
Diffstat (limited to 'generic/tclTimer.c')
-rw-r--r-- | generic/tclTimer.c | 32 |
1 files changed, 11 insertions, 21 deletions
diff --git a/generic/tclTimer.c b/generic/tclTimer.c index ef7a095..ccfd179 100644 --- a/generic/tclTimer.c +++ b/generic/tclTimer.c @@ -1039,37 +1039,27 @@ AfterDelay( if (iPtr->limit.timeEvent == NULL || TCL_TIME_BEFORE(endTime, iPtr->limit.time)) { diff = TCL_TIME_DIFF_MS_CEILING(endTime, now); -#ifndef TCL_WIDE_INT_IS_LONG - if (diff > LONG_MAX) { - diff = LONG_MAX; - } -#endif if (diff > TCL_TIME_MAXIMUM_SLICE) { diff = TCL_TIME_MAXIMUM_SLICE; } - if (diff == 0 && TCL_TIME_BEFORE(now, endTime)) { - diff = 1; - } + if (diff == 0 && TCL_TIME_BEFORE(now, endTime)) { + diff = 1; + } if (diff > 0) { - Tcl_Sleep((long) diff); - if (diff < SLEEP_OFFLOAD_GETTIMEOFDAY) { - break; - } + Tcl_Sleep((int) diff); + if (diff < SLEEP_OFFLOAD_GETTIMEOFDAY) { + break; + } } else { - break; - } + break; + } } else { diff = TCL_TIME_DIFF_MS(iPtr->limit.time, now); -#ifndef TCL_WIDE_INT_IS_LONG - if (diff > LONG_MAX) { - diff = LONG_MAX; - } -#endif if (diff > TCL_TIME_MAXIMUM_SLICE) { diff = TCL_TIME_MAXIMUM_SLICE; } if (diff > 0) { - Tcl_Sleep((long) diff); + Tcl_Sleep((int) diff); } if (Tcl_AsyncReady()) { if (Tcl_AsyncInvoke(interp, TCL_OK) != TCL_OK) { @@ -1083,7 +1073,7 @@ AfterDelay( return TCL_ERROR; } } - Tcl_GetTime(&now); + Tcl_GetTime(&now); } while (TCL_TIME_BEFORE(now, endTime)); return TCL_OK; } |