diff options
author | Miguel Sofer <miguel.sofer@gmail.com> | 2009-03-21 12:24:48 (GMT) |
---|---|---|
committer | Miguel Sofer <miguel.sofer@gmail.com> | 2009-03-21 12:24:48 (GMT) |
commit | 24ad5055202aab332c748c20e2bd0471e3aab234 (patch) | |
tree | bb3dee3248aee3a5159b68b525c8d1d998b8a2b2 /generic/tclBasic.c | |
parent | 260a0df5b742697276b762bcddd34c141aed9942 (diff) | |
download | tcl-24ad5055202aab332c748c20e2bd0471e3aab234.zip tcl-24ad5055202aab332c748c20e2bd0471e3aab234.tar.gz tcl-24ad5055202aab332c748c20e2bd0471e3aab234.tar.bz2 |
* generic/tclBasic.c: fixed "leaks" in aliases, imports and
* generic/tclInt.h: ensembles. Only remaining known leak
* generic/tclInterp.c: is in ensemble unknown dispatch (as it
* generic/tclNamesp.c: not NR-enabled)
* tests/tailcall.test:
Diffstat (limited to 'generic/tclBasic.c')
-rw-r--r-- | generic/tclBasic.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/generic/tclBasic.c b/generic/tclBasic.c index c40cd49..24a1368 100644 --- a/generic/tclBasic.c +++ b/generic/tclBasic.c @@ -16,7 +16,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.389 2009/03/21 09:42:06 msofer Exp $ + * RCS: @(#) $Id: tclBasic.c,v 1.390 2009/03/21 12:24:48 msofer Exp $ */ #include "tclInt.h" @@ -4058,7 +4058,12 @@ TclNREvalObjv( * finishes the source command and not just the target. */ - TclNRAddCallback(interp, NRCommand, NULL, NULL, NULL, NULL); + if (iPtr->evalFlags & TCL_EVAL_REDIRECT) { + TclNRAddCallback(interp, NRCommand, NULL, INT2PTR(1), NULL, NULL); + iPtr->evalFlags &= ~TCL_EVAL_REDIRECT; + } else { + TclNRAddCallback(interp, NRCommand, NULL, NULL, NULL, NULL); + } cmdPtrPtr = (Command **) &(TOP_CB(interp)->data[0]); TclNRSpliceDeferred(interp); |