summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordgp <dgp@users.sourceforge.net>2003-11-17 18:28:42 (GMT)
committerdgp <dgp@users.sourceforge.net>2003-11-17 18:28:42 (GMT)
commit045babb25ab5747e5f2aef179ea9233f9b76aff2 (patch)
tree1ee6ca8eede308e994d13cf7dfe8b1ae2cfe8007
parent2dd07a1b8cbd0b5e2874db95e2bbc5d82deb8522 (diff)
downloadtcl-045babb25ab5747e5f2aef179ea9233f9b76aff2.zip
tcl-045babb25ab5747e5f2aef179ea9233f9b76aff2.tar.gz
tcl-045babb25ab5747e5f2aef179ea9233f9b76aff2.tar.bz2
more details on the regexp fix.
-rw-r--r--ChangeLog10
1 files changed, 10 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index dfcccf5..8d79256 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -2,6 +2,16 @@
* tests/reg.test: Added tests for [Bugs 230589, 504785, 505048, 840258]
recently fixed by 2003-11-15 commit to regcomp.c by Pavel Goran.
+ His notes on the fix: This bug results from an error in code that
+ splits states into "progress" and "no-progress" ones. This error
+ causes an interesting situation with the pre-collected single-linked
+ list of states to be splitted: many items were added to the list, but
+ only several of them are accessible from the list beginning,
+ since the "tmp" member of struct state (which is used here to
+ hold a pointer to the next list item) gets overwritten, which
+ results in a "looped" chain. As a result, not all of states are
+ splitted, and one state is splitted two times, causing incorrect
+ "no-progress" flag values.
2003-11-16 Donal K. Fellows <donal.k.fellows@man.ac.uk>