diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-11 08:21:29 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-11 08:21:29 +0000 |
commit | 29cd838eab01ed7110f3ccb2e8c6a35c8a31dbcc (patch) | |
tree | 63ef546b10a81d461e5cf5ed9e98a68cd7dee1aa /src/grep/tests/invalid-multibyte-infloop | |
parent | Initial commit. (diff) | |
download | kbuild-29cd838eab01ed7110f3ccb2e8c6a35c8a31dbcc.tar.xz kbuild-29cd838eab01ed7110f3ccb2e8c6a35c8a31dbcc.zip |
Adding upstream version 1:0.1.9998svn3589+dfsg.upstream/1%0.1.9998svn3589+dfsg
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/grep/tests/invalid-multibyte-infloop')
-rwxr-xr-x | src/grep/tests/invalid-multibyte-infloop | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/src/grep/tests/invalid-multibyte-infloop b/src/grep/tests/invalid-multibyte-infloop new file mode 100755 index 0000000..b4ad14b --- /dev/null +++ b/src/grep/tests/invalid-multibyte-infloop @@ -0,0 +1,37 @@ +#!/bin/sh +# Ensure that we don't trigger a grep -F infloop. + +. "${srcdir=.}/init.sh"; path_prepend_ ../src + +require_en_utf8_locale_ +require_compiled_in_MB_support +require_timeout_ + +encode() { echo "$1" | tr A '\202'; } + +encode AA > input + +fail=0 + +# Before 2.15, this would infloop. +LC_ALL=en_US.UTF-8 timeout 10 grep -aF $(encode A) input > out +status=$? +if test $status -eq 0; then + compare input out +elif test $status -eq 1; then + compare_dev_null_ /dev/null out +else + test $status -eq 2 +fi || fail=1 + +LC_ALL=en_US.UTF-8 timeout 10 grep -F $(encode A) input > out +status=$? +if test $status -eq 0; then + compare /dev/null out +elif test $status -eq 1; then + compare_dev_null_ /dev/null out +else + test $status -eq 2 +fi || fail=1 + +Exit $fail |