diff options
author | dgp <dgp@users.sourceforge.net> | 2008-07-30 20:59:08 (GMT) |
---|---|---|
committer | dgp <dgp@users.sourceforge.net> | 2008-07-30 20:59:08 (GMT) |
commit | 9e8dbae9702d5444c736db42516880c00f243f47 (patch) | |
tree | da78b992e26a3937c8682cd17c2c3af2d3bc3278 | |
parent | f1cf69a7dbc3041d83287a1d40917f854312450c (diff) | |
download | tcl-9e8dbae9702d5444c736db42516880c00f243f47.zip tcl-9e8dbae9702d5444c736db42516880c00f243f47.tar.gz tcl-9e8dbae9702d5444c736db42516880c00f243f47.tar.bz2 |
* generic/tclBasic.c: Corrected the timing of when the flag
TCL_ALLOW_EXCEPTIONS is tested.
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | generic/tclBasic.c | 6 |
2 files changed, 8 insertions, 3 deletions
@@ -1,3 +1,8 @@ +2008-07-30 Don Porter <dgp@users.sourceforge.net> + + * generic/tclBasic.c: Corrected the timing of when the flag + TCL_ALLOW_EXCEPTIONS is tested. + 2008-07-29 Miguel Sofer <msofer@users.sf.net> * generic/tclExecute.c: fix [Bug 2030670] that cause diff --git a/generic/tclBasic.c b/generic/tclBasic.c index 0c0fbda..fcdd41d 100644 --- a/generic/tclBasic.c +++ b/generic/tclBasic.c @@ -14,7 +14,7 @@ * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclBasic.c,v 1.295.2.7 2008/07/28 20:45:15 andreas_kupries Exp $ + * RCS: @(#) $Id: tclBasic.c,v 1.295.2.8 2008/07/30 20:59:16 dgp Exp $ */ #include "tclInt.h" @@ -3880,6 +3880,7 @@ Tcl_EvalObjv( { Interp *iPtr = (Interp *) interp; int code = TCL_OK; + int allowExceptions = (iPtr->evalFlags & TCL_ALLOW_EXCEPTIONS); iPtr->numLevels++; code = TclEvalObjvInternal(interp, objc, objv, NULL, 0, flags); @@ -3888,7 +3889,6 @@ Tcl_EvalObjv( if (code == TCL_OK) { return code; } else { - int allowExceptions = (iPtr->evalFlags & TCL_ALLOW_EXCEPTIONS); /* * If we are again at the top level, process any unusual return code @@ -4921,7 +4921,6 @@ TclEvalObjEx( int result; CallFrame *savedVarFramePtr;/* Saves old copy of iPtr->varFramePtr in case * TCL_EVAL_GLOBAL was set. */ - int allowExceptions = (iPtr->evalFlags & TCL_ALLOW_EXCEPTIONS); Tcl_IncrRefCount(objPtr); @@ -5086,6 +5085,7 @@ TclEvalObjEx( * TIP #280 The invoker provides us with the context for the script. * We transfer this to the byte code compiler. */ + int allowExceptions = (iPtr->evalFlags & TCL_ALLOW_EXCEPTIONS); savedVarFramePtr = iPtr->varFramePtr; if (flags & TCL_EVAL_GLOBAL) { |