summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog6
-rw-r--r--generic/tclBasic.c18
2 files changed, 14 insertions, 10 deletions
diff --git a/ChangeLog b/ChangeLog
index e1013de..6b7fd4b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -10,7 +10,11 @@
2009-11-10 Andreas Kupries <andreask@activestate.com>
- * generic/tclObj.c: Plus memory leak in TclContinuationsEnter().
+ * generic/tclBasic.c: Plug another leak in TCL_EVAL_DIRECT
+ evaluation. Forward port from Tcl 8.5 branch, change by Don
+ Porter.
+
+ * generic/tclObj.c: Plug memory leak in TclContinuationsEnter().
[Bug 2895323]. Forward port from Tcl 8.5 branch, change by Don
Porter.
diff --git a/generic/tclBasic.c b/generic/tclBasic.c
index be9ce4b..cca8fba 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.406 2009/11/09 22:36:19 andreas_kupries Exp $
+ * RCS: @(#) $Id: tclBasic.c,v 1.407 2009/11/10 20:53:24 andreas_kupries Exp $
*/
#include "tclInt.h"
@@ -6108,17 +6108,17 @@ TclNREvalObjEx(
Tcl_DecrRefCount(ctxPtr->data.eval.path);
}
TclStackFree(interp, ctxPtr);
+ }
- /*
- * Now release the lock on the continuation line information, if
- * any, and restore the caller's settings.
- */
+ /*
+ * Now release the lock on the continuation line information, if any,
+ * and restore the caller's settings.
+ */
- if (iPtr->scriptCLLocPtr) {
- Tcl_Release (iPtr->scriptCLLocPtr);
- }
- iPtr->scriptCLLocPtr = saveCLLocPtr;
+ if (iPtr->scriptCLLocPtr) {
+ Tcl_Release (iPtr->scriptCLLocPtr);
}
+ iPtr->scriptCLLocPtr = saveCLLocPtr;
TclDecrRefCount(objPtr);
return result;
}