diff options
author | Kevin B Kenny <kennykb@acm.org> | 2004-09-07 17:38:55 (GMT) |
---|---|---|
committer | Kevin B Kenny <kennykb@acm.org> | 2004-09-07 17:38:55 (GMT) |
commit | e8e954f6105c001bef0d51e5746b3802e306a43c (patch) | |
tree | 1f689fb60e26061c50d8ead40202c15fc42bdc48 /generic/tclTimer.c | |
parent | c82232c5071d315f5a14e7828abdb48da9d6463e (diff) | |
download | tcl-e8e954f6105c001bef0d51e5746b3802e306a43c.zip tcl-e8e954f6105c001bef0d51e5746b3802e306a43c.tar.gz tcl-e8e954f6105c001bef0d51e5746b3802e306a43c.tar.bz2 |
* generic/tclTimer.c: Removed a premature optimisation that
attempted to store the assoc data in the client data; the
optimisation caused a bug that [after] would overwrite
its imports. [Bug 1016167]
* library/clock.tcl (InitTZData, ClearCaches): Changed so that the
in-memory time zone :UTC (and its aliases) always gets
reinitialised, in case tzdata is absent. [Bug 1019537, 1023779]
* library/tzdata/*: Regenerated.
* tests/clock.test (clock-31.*, clock-39.1): Corrected a problem
where the 'system' locale tests fail on a non-English Windows
machine. [Bug 1023761]. Added a test to make sure that alias
time zones load correctly. [Bug 1023779].
* tools/tclZIC.tcl (writeLinks): Corrected a problem where
alias time zone names were written incorrectly, causing them
to fail to load at run time. [Bug 1023779].
* win/tclWinTime.c (Tcl_GetTime): Eliminated CPUID tests on
Win64 - assuming that HAL vendors now do a better job of
keeping the performance counters synchronized among CPU's.
[Bug 1020445]
Diffstat (limited to 'generic/tclTimer.c')
-rw-r--r-- | generic/tclTimer.c | 23 |
1 files changed, 4 insertions, 19 deletions
diff --git a/generic/tclTimer.c b/generic/tclTimer.c index f7a3d46..f6c068c 100644 --- a/generic/tclTimer.c +++ b/generic/tclTimer.c @@ -9,7 +9,7 @@ * See the file "license.terms" for information on usage and redistribution * of this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclTimer.c,v 1.9 2004/08/25 22:21:34 dgp Exp $ + * RCS: @(#) $Id: tclTimer.c,v 1.10 2004/09/07 17:38:56 kennykb Exp $ */ #include "tclInt.h" @@ -731,16 +731,14 @@ TclServiceIdle() /* ARGSUSED */ int Tcl_AfterObjCmd(clientData, interp, objc, objv) - ClientData clientData; /* Points to the "tclAfter" assocData for - * this interpreter, or NULL if the assocData - * hasn't been created yet.*/ + ClientData clientData; /* Unused */ Tcl_Interp *interp; /* Current interpreter. */ int objc; /* Number of arguments. */ Tcl_Obj *CONST objv[]; /* Argument objects. */ { int ms; AfterInfo *afterPtr; - AfterAssocData *assocPtr = (AfterAssocData *) clientData; + AfterAssocData *assocPtr; Tcl_CmdInfo cmdInfo; int length; char *argString; @@ -764,26 +762,13 @@ Tcl_AfterObjCmd(clientData, interp, objc, objv) * future. */ + assocPtr = Tcl_GetAssocData( interp, "tclAfter", NULL ); if (assocPtr == NULL) { - Tcl_Command token = Tcl_GetCommandFromObj(interp, objv[0]); - Tcl_Command originalToken = TclGetOriginalCommand(token); - - if (originalToken != NULL) { - token = originalToken; - } assocPtr = (AfterAssocData *) ckalloc(sizeof(AfterAssocData)); assocPtr->interp = interp; assocPtr->firstAfterPtr = NULL; Tcl_SetAssocData(interp, "tclAfter", AfterCleanupProc, (ClientData) assocPtr); - cmdInfo.proc = NULL; - cmdInfo.clientData = (ClientData) NULL; - cmdInfo.objProc = Tcl_AfterObjCmd; - cmdInfo.objClientData = (ClientData) assocPtr; - cmdInfo.deleteProc = NULL; - cmdInfo.deleteData = (ClientData) assocPtr; - - Tcl_SetCommandInfoFromToken(token, &cmdInfo); } /* |