diff options
author | sebres <sebres@users.sourceforge.net> | 2017-07-03 13:30:36 (GMT) |
---|---|---|
committer | sebres <sebres@users.sourceforge.net> | 2017-07-03 13:30:36 (GMT) |
commit | 4378179cb1eb32da7bfaf8041c2a3efafdffff33 (patch) | |
tree | 2c1199a9526680899bc66ea3adf9a7093ebaec8f /generic | |
parent | 76c0ca9d7fe8df2d4a5b46ead77bd8bd3f9d05a5 (diff) | |
download | tcl-4378179cb1eb32da7bfaf8041c2a3efafdffff33.zip tcl-4378179cb1eb32da7bfaf8041c2a3efafdffff33.tar.gz tcl-4378179cb1eb32da7bfaf8041c2a3efafdffff33.tar.bz2 |
"after at" set factor to 1000000 (seconds), test cases fixed
Diffstat (limited to 'generic')
-rw-r--r-- | generic/tclTimer.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/generic/tclTimer.c b/generic/tclTimer.c index 5878b39..e6b0799 100644 --- a/generic/tclTimer.c +++ b/generic/tclTimer.c @@ -1468,10 +1468,10 @@ TclpGetUTimeFromObj( if (tm < 0x7FFFFFFFFFFFFFFFL / factor) { /* avoid overflow */ /* use precise as possible calculation by double (microseconds) */ if (factor == 1) { - *timePtr = tm; + *timePtr = (Tcl_WideInt)tm; } else { *timePtr = ((Tcl_WideInt)tm * factor) + - (((long)(tm*factor)) % factor); + (((Tcl_WideInt)(tm*factor)) % factor); } return TCL_OK; } @@ -1553,7 +1553,7 @@ Tcl_AfterObjCmd( ) { Tcl_AppendResult(interp, "bad argument \"", Tcl_GetString(objv[1]), - "\": must be at, cancel, idle, info, prolong or a time", NULL); + "\": must be at, cancel, idle, info or a time", NULL); return TCL_ERROR; } @@ -1584,8 +1584,8 @@ Tcl_AfterObjCmd( Tcl_WrongNumArgs(interp, 1, objv, "?option? time"); return TCL_ERROR; } - /* get time from object, default factor 1000 (ms) */ - if (TclpGetUTimeFromObj(interp, objv[1], &usec, 1000) != TCL_OK) { + /* get time from object, default factor for "at" - 1000000 (s) */ + if (TclpGetUTimeFromObj(interp, objv[1], &usec, 1000000) != TCL_OK) { return TCL_ERROR; } if (objc == 2) { |