summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjan.nijtmans <nijtmans@users.sourceforge.net>2021-02-19 07:18:13 (GMT)
committerjan.nijtmans <nijtmans@users.sourceforge.net>2021-02-19 07:18:13 (GMT)
commitbdd6e3f4dfea4d7d47d323b51a660c7c7517a531 (patch)
tree47c045a70af2969ca427ade9dd63dfb2520ad472
parent042e9a4f8ae09cf75efccd7697c9b1a53f83e70a (diff)
downloadtcl-bdd6e3f4dfea4d7d47d323b51a660c7c7517a531.zip
tcl-bdd6e3f4dfea4d7d47d323b51a660c7c7517a531.tar.gz
tcl-bdd6e3f4dfea4d7d47d323b51a660c7c7517a531.tar.bz2
Fix [7c64aa5e1a]: Another uninitialized-variable bug in BRE-mode parsing. Thanks to Tom Lane for the bug-report and the fix.
-rw-r--r--generic/regc_lex.c2
-rw-r--r--tests/reg.test4
2 files changed, 5 insertions, 1 deletions
diff --git a/generic/regc_lex.c b/generic/regc_lex.c
index 1c60427..0cc62a2 100644
--- a/generic/regc_lex.c
+++ b/generic/regc_lex.c
@@ -427,7 +427,7 @@ next(
if (INCON(L_BBND) && NEXT1('}')) {
v->now++;
INTOCON(L_BRE);
- RET('}');
+ RETV('}', 1);
} else {
FAILW(REG_BADBR);
}
diff --git a/tests/reg.test b/tests/reg.test
index 6cd2eb3..56444ba 100644
--- a/tests/reg.test
+++ b/tests/reg.test
@@ -1120,6 +1120,10 @@ test reg-33.29 {} {
test reg-33.30 {Bug 1080042} {
regexp {(\Y)+} foo
} 1
+test reg-33.31 {Bug 7c64aa5e1a} {
+ regexp -inline {(?b).\{1,10\}} {abcdef}
+} abcdef
+
# cleanup