summaryrefslogtreecommitdiffstats
path: root/tests/regexp.test
diff options
context:
space:
mode:
authordgp@users.sourceforge.net <dgp>2013-04-08 19:59:03 (GMT)
committerdgp@users.sourceforge.net <dgp>2013-04-08 19:59:03 (GMT)
commit6f46fce661a3729408f1b27333ca5f7a4adaede4 (patch)
tree66cc82c126d9de0e6ce6bc9579d76026b029826b /tests/regexp.test
parent785663f67dd1f0e3454eb3f1cf3313af9420ca8d (diff)
parentf77d9ac44965ff3869aaf9136cb176def9adedc3 (diff)
downloadtcl-6f46fce661a3729408f1b27333ca5f7a4adaede4.zip
tcl-6f46fce661a3729408f1b27333ca5f7a4adaede4.tar.gz
tcl-6f46fce661a3729408f1b27333ca5f7a4adaede4.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 73c0edf..8138054 100644
--- a/tests/regexp.test
+++ b/tests/regexp.test
@@ -717,6 +717,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*}
test regexp-23.1 {regexp -all and -line} {
set string ""