Blame tests/invalid-multibyte-infloop
|
Packit |
709fb3 |
#!/bin/sh
|
|
Packit |
709fb3 |
# Ensure that we don't trigger a grep -F infloop.
|
|
Packit |
709fb3 |
|
|
Packit |
709fb3 |
. "${srcdir=.}/init.sh"; path_prepend_ ../src
|
|
Packit |
709fb3 |
|
|
Packit |
709fb3 |
require_en_utf8_locale_
|
|
Packit |
709fb3 |
require_compiled_in_MB_support
|
|
Packit |
709fb3 |
require_timeout_
|
|
Packit |
709fb3 |
|
|
Packit |
709fb3 |
encode() { echo "$1" | tr A '\202'; }
|
|
Packit |
709fb3 |
|
|
Packit |
709fb3 |
encode AA > input
|
|
Packit |
709fb3 |
|
|
Packit |
709fb3 |
fail=0
|
|
Packit |
709fb3 |
|
|
Packit |
709fb3 |
# Before 2.15, this would infloop.
|
|
Packit |
709fb3 |
LC_ALL=en_US.UTF-8 timeout 10 grep -aF $(encode A) input > out
|
|
Packit |
709fb3 |
status=$?
|
|
Packit |
709fb3 |
if test $status -eq 0; then
|
|
Packit |
709fb3 |
compare input out
|
|
Packit |
709fb3 |
elif test $status -eq 1; then
|
|
Packit |
709fb3 |
compare_dev_null_ /dev/null out
|
|
Packit |
709fb3 |
else
|
|
Packit |
709fb3 |
test $status -eq 2
|
|
Packit |
709fb3 |
fi || fail=1
|
|
Packit |
709fb3 |
|
|
Packit |
709fb3 |
echo 'Binary file input matches' >binary-file-matches
|
|
Packit |
709fb3 |
|
|
Packit |
709fb3 |
LC_ALL=en_US.UTF-8 timeout 10 grep -F $(encode A) input > out
|
|
Packit |
709fb3 |
status=$?
|
|
Packit |
709fb3 |
if test $status -eq 0; then
|
|
Packit |
709fb3 |
compare binary-file-matches out
|
|
Packit |
709fb3 |
elif test $status -eq 1; then
|
|
Packit |
709fb3 |
compare_dev_null_ /dev/null out
|
|
Packit |
709fb3 |
else
|
|
Packit |
709fb3 |
test $status -eq 2
|
|
Packit |
709fb3 |
fi || fail=1
|
|
Packit |
709fb3 |
|
|
Packit |
709fb3 |
Exit $fail
|