@@ -117,19 +117,19 @@ static Tcl_ThreadDataKey dataKey;
117117 * side-effect free. The "prototypes" for these macros are:
118118 *
119119 * static int TCL_TIME_BEFORE(Tcl_Time t1, Tcl_Time t2);
120- * static long TCL_TIME_DIFF_MS(Tcl_Time t1, Tcl_Time t2);
120+ * static Tcl_WideInt TCL_TIME_DIFF_MS(Tcl_Time t1, Tcl_Time t2);
121121 */
122122
123123#define TCL_TIME_BEFORE (t1 , t2 ) \
124124 (((t1).sec<(t2).sec) || ((t1).sec==(t2).sec && (t1).usec<(t2).usec))
125125
126126#define TCL_TIME_DIFF_MS (t1 , t2 ) \
127127 (1000*((Tcl_WideInt)(t1).sec - (Tcl_WideInt)(t2).sec) + \
128- ((long)( t1).usec - (long) (t2).usec)/1000)
128+ ((t1).usec - (t2).usec)/1000)
129129
130130#define TCL_TIME_DIFF_MS_CEILING (t1 , t2 ) \
131131 (1000*((Tcl_WideInt)(t1).sec - (Tcl_WideInt)(t2).sec) + \
132- ((long)( t1).usec - (long) (t2).usec + 999)/1000)
132+ ((t1).usec - (t2).usec + 999)/1000)
133133
134134/*
135135 * Sleeps under that number of milliseconds don't get double-checked
@@ -866,8 +866,8 @@ Tcl_AfterObjCmd(
866866 afterPtr -> id = tsdPtr -> afterId ;
867867 tsdPtr -> afterId += 1 ;
868868 Tcl_GetTime (& wakeup );
869- wakeup .sec += ( long )( ms / 1000 ) ;
870- wakeup .usec += (( long )( ms % 1000 )) * 1000 ;
869+ wakeup .sec += ms / 1000 ;
870+ wakeup .usec += ms % 1000 * 1000 ;
871871 if (wakeup .usec > 1000000 ) {
872872 wakeup .sec ++ ;
873873 wakeup .usec -= 1000000 ;
@@ -1014,8 +1014,8 @@ AfterDelay(
10141014
10151015 Tcl_GetTime (& now );
10161016 endTime = now ;
1017- endTime .sec += (long )( ms / 1000 );
1018- endTime .usec += (( int )( ms % 1000 ) ) * 1000 ;
1017+ endTime .sec += (ms / 1000 );
1018+ endTime .usec += (ms % 1000 ) * 1000 ;
10191019 if (endTime .usec >= 1000000 ) {
10201020 endTime .sec ++ ;
10211021 endTime .usec -= 1000000 ;
@@ -1047,7 +1047,7 @@ AfterDelay(
10471047 diff = 1 ;
10481048 }
10491049 if (diff > 0 ) {
1050- Tcl_Sleep ((long ) diff );
1050+ Tcl_Sleep ((int ) diff );
10511051 if (diff < SLEEP_OFFLOAD_GETTIMEOFDAY ) {
10521052 break ;
10531053 }
0 commit comments