summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog12
-rw-r--r--generic/tclLiteral.c3
-rw-r--r--tests/info.test3
3 files changed, 16 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index cabe9f4..e548e4a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,15 @@
+2009-10-28 Don Porter <dgp@users.sourceforge.net>
+
+ * generic/tclLiteral.c: Fixed 2 bugs reported in [Bug 2888044].
+ * tests/info.test: First, as noted in the comments of the
+ TclCleanupLiteralTable routine, since the teardown of the intrep
+ of one Tcl_Obj can cause the teardown of others in the same table,
+ the full table cleanup must be done with care, but the code did not
+ contain the same care demanded in the comment. Second, recent
+ additions to the info.test file had poor hygiene, leaving an array
+ variable ::a lying around, which breaks later interp.test tests during
+ a -singleproc 1 run of the test suite.
+
2009-10-28 Kevin B. Kenny <kennykb@acm.org>
* tests/fileName.test (fileName-20.[78]): Corrected poor test
diff --git a/generic/tclLiteral.c b/generic/tclLiteral.c
index 5d4974a..10a18f8 100644
--- a/generic/tclLiteral.c
+++ b/generic/tclLiteral.c
@@ -13,7 +13,7 @@
* See the file "license.terms" for information on usage and redistribution of
* this file, and for a DISCLAIMER OF ALL WARRANTIES.
*
- * RCS: @(#) $Id: tclLiteral.c,v 1.36 2009/07/22 12:00:42 nijtmans Exp $
+ * RCS: @(#) $Id: tclLiteral.c,v 1.37 2009/10/28 21:03:19 dgp Exp $
*/
#include "tclInt.h"
@@ -136,6 +136,7 @@ TclCleanupLiteralTable(
objPtr->typePtr = NULL;
typePtr->freeIntRepProc(objPtr);
didOne = 1;
+ break;
} else {
entryPtr = nextPtr;
}
diff --git a/tests/info.test b/tests/info.test
index 24c966a..f983a0c 100644
--- a/tests/info.test
+++ b/tests/info.test
@@ -13,7 +13,7 @@
# See the file "license.terms" for information on usage and redistribution
# of this file, and for a DISCLAIMER OF ALL WARRANTIES.
#
-# RCS: @(#) $Id: info.test,v 1.67 2009/09/07 19:59:59 dgp Exp $
+# RCS: @(#) $Id: info.test,v 1.68 2009/10/28 21:03:19 dgp Exp $
if {[lsearch [namespace children] ::tcltest] == -1} {
package require tcltest 2
@@ -1822,6 +1822,7 @@ test info-30.47 {TIP 280 for compiled [subst]} {
subst {$a(
[dict get [info frame 0] line])} ; # 1823
} YES
+unset -nocomplain a
test info-30.48 {Bug 2850901} testevalex {
testevalex {return -level 0 [format %s {}