summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog2
-rw-r--r--generic/regexec.c7
-rw-r--r--generic/tclUtf.c2
-rw-r--r--tests/regexp.test4
4 files changed, 7 insertions, 8 deletions
diff --git a/ChangeLog b/ChangeLog
index b85db83..02472fe 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,4 +1,4 @@
-2013-07-17 Harald Oehlmann <oehhar@users.sf.net>
+2013-08-01 Harald Oehlmann <oehhar@users.sf.net>
* tclUnixNotify.c Tcl_InitNotifier: Bug [a0bc856dcd]
Start notifier thread again if we were forked, to solve Rivet bug
diff --git a/generic/regexec.c b/generic/regexec.c
index c902209..205fcc2 100644
--- a/generic/regexec.c
+++ b/generic/regexec.c
@@ -512,12 +512,7 @@ cfindloop(
return er;
}
if ((shorter) ? end == estop : end == begin) {
- /*
- * No point in trying again.
- */
-
- *coldp = cold;
- return REG_NOMATCH;
+ break;
}
/*
diff --git a/generic/tclUtf.c b/generic/tclUtf.c
index a038f8a..e5497a4 100644
--- a/generic/tclUtf.c
+++ b/generic/tclUtf.c
@@ -1555,7 +1555,7 @@ Tcl_UniCharIsSpace(
if (((Tcl_UniChar) ch) < ((Tcl_UniChar) 0x80)) {
return TclIsSpaceProc((char) ch);
- } else if ((Tcl_UniChar) ch == 0x180e) {
+ } else if ((Tcl_UniChar) ch == 0x180e || (Tcl_UniChar) ch == 0x202f) {
return 1;
} else {
return ((SPACE_BITS >> GetCategory(ch)) & 1);
diff --git a/tests/regexp.test b/tests/regexp.test
index 8138054..362f425 100644
--- a/tests/regexp.test
+++ b/tests/regexp.test
@@ -728,6 +728,10 @@ test regexp-22.5 {Bug 3610026} -setup {
} -cleanup {
unset -nocomplain e cp
} -returnCodes error -match glob -result {*too many colors*}
+test regexp-22.6 {Bug 6585b21ca8} {
+ expr {[regexp {(\w).*?\1} Programmer m] ? $m : "<NONE>"}
+} rogr
+
test regexp-23.1 {regexp -all and -line} {
set string ""