summaryrefslogtreecommitdiffstats
path: root/generic/tclCmdMZ.c
diff options
context:
space:
mode:
authorandreas_kupries <akupries@shaw.ca>2001-12-05 18:22:24 (GMT)
committerandreas_kupries <akupries@shaw.ca>2001-12-05 18:22:24 (GMT)
commitc2a8f646627f4cec5a76810a5b59d17229c5eec6 (patch)
treec99bcc14812bc67defd3e90e776b514766e0e574 /generic/tclCmdMZ.c
parent8c077c7737d8f145bda783f4f6ae7b66660d5c3d (diff)
downloadtcl-c2a8f646627f4cec5a76810a5b59d17229c5eec6.zip
tcl-c2a8f646627f4cec5a76810a5b59d17229c5eec6.tar.gz
tcl-c2a8f646627f4cec5a76810a5b59d17229c5eec6.tar.bz2
* NOTES: Updated to explain the usage of the various macros
upfront. The original contents remain and are declared to be the scratchpad. * tclCmdMZ.c: * tclCompCmds.c: * tclCompile.c: * tclEvent.c: * tclExecute.c: * tclNamesp.c: * tclParse.c: * tclProc.c: * tclUtil.c: More places using TCL_STRUCT_ON_HEAP.
Diffstat (limited to 'generic/tclCmdMZ.c')
-rw-r--r--generic/tclCmdMZ.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/generic/tclCmdMZ.c b/generic/tclCmdMZ.c
index 3af4aad..799fd1a 100644
--- a/generic/tclCmdMZ.c
+++ b/generic/tclCmdMZ.c
@@ -13,7 +13,7 @@
* See the file "license.terms" for information on usage and redistribution
* of this file, and for a DISCLAIMER OF ALL WARRANTIES.
*
- * RCS: @(#) $Id: tclCmdMZ.c,v 1.26.2.5.2.1 2001/11/28 17:58:35 andreas_kupries Exp $
+ * RCS: @(#) $Id: tclCmdMZ.c,v 1.26.2.5.2.2 2001/12/05 18:22:25 andreas_kupries Exp $
*/
#include "tclInt.h"
@@ -2770,12 +2770,13 @@ TraceVarProc(clientData, interp, name1, name2, flags)
int flags; /* OR-ed bits giving operation and other
* information. */
{
- Tcl_SavedResult state;
+ TEMP (Tcl_SavedResult) state;
TraceVarInfo *tvarPtr = (TraceVarInfo *) clientData;
char *result;
int code;
Tcl_DString cmd;
+ NEWTEMP (Tcl_SavedResult, state);
result = NULL;
if (tvarPtr->errMsg != NULL) {
ckfree(tvarPtr->errMsg);
@@ -2810,7 +2811,7 @@ TraceVarProc(clientData, interp, name1, name2, flags)
* the command. We discard any object result the command returns.
*/
- Tcl_SaveResult(interp, &state);
+ Tcl_SaveResult(interp, REF (state));
code = Tcl_Eval(interp, Tcl_DStringValue(&cmd));
if (code != TCL_OK) { /* copy error msg to result */
@@ -2823,7 +2824,7 @@ TraceVarProc(clientData, interp, name1, name2, flags)
result = tvarPtr->errMsg;
}
- Tcl_RestoreResult(interp, &state);
+ Tcl_RestoreResult(interp, REF (state));
Tcl_DStringFree(&cmd);
}
@@ -2834,6 +2835,7 @@ TraceVarProc(clientData, interp, name1, name2, flags)
}
ckfree((char *) tvarPtr);
}
+ RELTEMP (state);
return result;
}