summaryrefslogtreecommitdiffstats
path: root/ChangeLog
diff options
context:
space:
mode:
authordkf <donal.k.fellows@manchester.ac.uk>2002-01-03 18:23:47 (GMT)
committerdkf <donal.k.fellows@manchester.ac.uk>2002-01-03 18:23:47 (GMT)
commite9733d7e31787203d2e1ca47c8c05cc6669e2ad9 (patch)
tree4bea20379f2b8b069951068a3f9d76a1452a9309 /ChangeLog
parent4d95e01079a93133d207c23cd8ac9b6201bb557d (diff)
downloadtcl-e9733d7e31787203d2e1ca47c8c05cc6669e2ad9.zip
tcl-e9733d7e31787203d2e1ca47c8c05cc6669e2ad9.tar.gz
tcl-e9733d7e31787203d2e1ca47c8c05cc6669e2ad9.tar.bz2
Added fix for Bug #494348; the [foreach] implementation was doing some
cacheing that didn't seem to be safe, and which wouldn't gain very much performance either. Removing it fixed the bug.
Diffstat (limited to 'ChangeLog')
-rw-r--r--ChangeLog11
1 files changed, 11 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 53ece91..19e64a3 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,16 @@
2002-01-03 Donal K. Fellows <fellowsd@cs.man.ac.uk>
+ * tests/basic.test (basic-39.4): Greatly simplified test while
+ still leaving it so that it crashes when run without the fix to
+ the [foreach] implementation.
+ * generic/tclCmdAH.c (Tcl_ForeachObjCmd): Stopped Bug #494348 from
+ happening by not trying to be so clever with cacheing; if nothing
+ untoward is happening anyway, the less efficient technique will
+ only add a few instruction cycles (one function call and a few
+ derefs/assigns per list per iteration, with no change in the
+ number of tests) and if something odd *is* going on, the code is
+ now far more robust.
+
* tests/basic.test (basic-39.4): Reproducable script from Bug #494348
2002-01-02 Donal K. Fellows <fellowsd@cs.man.ac.uk>