summaryrefslogtreecommitdiffstats
path: root/generic/tclExecute.c
diff options
context:
space:
mode:
Diffstat (limited to 'generic/tclExecute.c')
-rw-r--r--generic/tclExecute.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/generic/tclExecute.c b/generic/tclExecute.c
index e2ef7e4..f4a204e 100644
--- a/generic/tclExecute.c
+++ b/generic/tclExecute.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: tclExecute.c,v 1.461 2009/12/10 22:01:48 msofer Exp $
+ * RCS: @(#) $Id: tclExecute.c,v 1.462 2009/12/10 23:52:30 msofer Exp $
*/
#include "tclInt.h"
@@ -2039,8 +2039,9 @@ TclExecuteByteCode(
*/
corPtr->base.cmdFramePtr = bcFramePtr;
- BP->prevBottomPtr = NULL;
iPtr->varFramePtr = iPtr->rootFramePtr;
+ corPtr->callerBP = BP->prevBottomPtr;
+ BP->prevBottomPtr = NULL;
}
if (!corPtr->stackLevel) {
@@ -2832,13 +2833,12 @@ TclExecuteByteCode(
* new one.
*/
- if (param) {
- codePtr = param;
+ codePtr = param;
+ if (codePtr) {
goto nonRecursiveCallStart;
} else {
CoroutineData *corPtr = iPtr->execEnvPtr->corPtr;
- codePtr = NULL;
corPtr->callerBP = BP;
goto resumeCoroutine;
}