diff options
author | dgp <dgp@users.sourceforge.net> | 2007-05-07 19:45:32 (GMT) |
---|---|---|
committer | dgp <dgp@users.sourceforge.net> | 2007-05-07 19:45:32 (GMT) |
commit | da6c10f827c3825c5cdd1f0f8d1af2acba0a0ef3 (patch) | |
tree | 29ed64b0e7e0caaaf8f2c0f26ced6a0aaa35d4fa /generic/tclNamesp.c | |
parent | 95748a33387880fba794dc3e9db352a218b1f84e (diff) | |
download | tcl-da6c10f827c3825c5cdd1f0f8d1af2acba0a0ef3.zip tcl-da6c10f827c3825c5cdd1f0f8d1af2acba0a0ef3.tar.gz tcl-da6c10f827c3825c5cdd1f0f8d1af2acba0a0ef3.tar.bz2 |
[Tcl Bug 1706140]
* generic/tclLink.c (LinkTraceProc): Update Tcl_VarTraceProcs so that
* generic/tclNamesp.c (Error*Read): they call Tcl_InterpDeleted()
* generic/tclTrace.c (Trace*Proc): for themselves, and do not rely
* generic/tclUtil.c (TclPrecTraceProc): on (frequently buggy) setting
of the TCL_INTERP_DESTROYED flag by the trace core.
* generic/tclVar.c: Update callers of TclCallVarTraces to not
pass in the TCL_INTERP_DESTROYED flag. Also apply filters so that
public routines only pass documented flag values down to lower level
routines.
* generic/tclTrace.c (TclCallVarTraces): The setting of the
TCL_INTERP_DESTROYED flag is now done entirely within the
TclCallVarTraces routine, the only place it can be done right.
Diffstat (limited to 'generic/tclNamesp.c')
-rw-r--r-- | generic/tclNamesp.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/generic/tclNamesp.c b/generic/tclNamesp.c index 3f6ecf8..c090271 100644 --- a/generic/tclNamesp.c +++ b/generic/tclNamesp.c @@ -22,7 +22,7 @@ * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclNamesp.c,v 1.133 2007/04/24 17:50:53 dgp Exp $ + * RCS: @(#) $Id: tclNamesp.c,v 1.134 2007/05/07 19:45:33 dgp Exp $ */ #include "tclInt.h" @@ -622,7 +622,7 @@ ErrorCodeRead( { Interp *iPtr = (Interp *)interp; - if (flags & TCL_INTERP_DESTROYED) { + if (Tcl_InterpDeleted(interp)) { return NULL; } if (iPtr->errorCode) { @@ -696,7 +696,7 @@ ErrorInfoRead( { Interp *iPtr = (Interp *)interp; - if (flags & TCL_INTERP_DESTROYED) { + if (Tcl_InterpDeleted(interp)) { return NULL; } if (iPtr->errorInfo) { |