summaryrefslogtreecommitdiffstats
path: root/generic/tclParse.c
diff options
context:
space:
mode:
authormsofer <msofer@noemail.net>2008-07-14 20:29:37 (GMT)
committermsofer <msofer@noemail.net>2008-07-14 20:29:37 (GMT)
commitdaf00c1e236f24e7ddbe3bf414b5ca7ce04353e9 (patch)
treee7f19f81beecf18df1b4ed7a51f18c483da17797 /generic/tclParse.c
parentae0bd91f43079267de86766ac34767b878eb7220 (diff)
downloadtcl-daf00c1e236f24e7ddbe3bf414b5ca7ce04353e9.zip
tcl-daf00c1e236f24e7ddbe3bf414b5ca7ce04353e9.tar.gz
tcl-daf00c1e236f24e7ddbe3bf414b5ca7ce04353e9.tar.bz2
* generic/tclParse.c: reverting the "fix" for [Bug 2017583],
* tests/parse.test: numLevel management and TclInterpReady check seems to be necessary after all. FossilOrigin-Name: 589a13cd5a27c886a9ee4062646d5657b19d9293
Diffstat (limited to 'generic/tclParse.c')
-rw-r--r--generic/tclParse.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/generic/tclParse.c b/generic/tclParse.c
index 061f9eb..269978d 100644
--- a/generic/tclParse.c
+++ b/generic/tclParse.c
@@ -12,7 +12,7 @@
* See the file "license.terms" for information on usage and redistribution of
* this file, and for a DISCLAIMER OF ALL WARRANTIES.
*
- * RCS: @(#) $Id: tclParse.c,v 1.69 2008/07/14 02:09:30 msofer Exp $
+ * RCS: @(#) $Id: tclParse.c,v 1.70 2008/07/14 20:29:40 msofer Exp $
*/
#include "tclInt.h"
@@ -2165,9 +2165,16 @@ TclSubstTokens(
break;
case TCL_TOKEN_COMMAND: {
+ Interp *iPtr = (Interp *) interp;
+
/* TIP #280: Transfer line information to nested command */
- code = TclEvalEx(interp, tokenPtr->start+1, tokenPtr->size-2,
- 0, line);
+ iPtr->numLevels++;
+ code = TclInterpReady(interp);
+ if (code == TCL_OK) {
+ code = TclEvalEx(interp, tokenPtr->start+1, tokenPtr->size-2,
+ 0, line);
+ }
+ iPtr->numLevels--;
appendObj = Tcl_GetObjResult(interp);
break;
}