summaryrefslogtreecommitdiffstats
path: root/tests/regexp.test
diff options
context:
space:
mode:
authordgp <dgp@users.sourceforge.net>2013-04-08 19:45:55 (GMT)
committerdgp <dgp@users.sourceforge.net>2013-04-08 19:45:55 (GMT)
commite62eab9118e1460d3afe28e01dc2b83bbb63194c (patch)
tree88b8c204f46260baa9bc76dda0d1b56189e75472 /tests/regexp.test
parent84d7d75f97cf88a8414d4b9832487567cfaf2bd4 (diff)
parentf637643facaa33834a74333f56971933a2158176 (diff)
downloadtcl-e62eab9118e1460d3afe28e01dc2b83bbb63194c.zip
tcl-e62eab9118e1460d3afe28e01dc2b83bbb63194c.tar.gz
tcl-e62eab9118e1460d3afe28e01dc2b83bbb63194c.tar.bz2
3610026 Stop crash when the number of "colors" in a regular expression
overflows a short int. Thanks to Heikki Linnakangas for the report and the patch.
Diffstat (limited to 'tests/regexp.test')
-rw-r--r--tests/regexp.test11
1 files changed, 11 insertions, 0 deletions
diff --git a/tests/regexp.test b/tests/regexp.test
index 9b4c525..5328c8e 100644
--- a/tests/regexp.test
+++ b/tests/regexp.test
@@ -679,6 +679,17 @@ test regexp-22.4 {Bug 3606139} -setup {
} -cleanup {
rename a {}
} -returnCodes 1 -result {couldn't compile regular expression pattern: nfa has too many states}
+test regexp-22.5 {Bug 3610026} -setup {
+ set e {}
+ set cp 99
+ while {$cp < 32864} {
+ append e [format %c [incr cp]]
+ }
+} -body {
+ regexp -about $e
+} -cleanup {
+ unset -nocomplain e cp
+} -returnCodes error -match glob -result {*too many colors*}
# cleanup
::tcltest::cleanupTests