#! /bin/sh # Grep 2.21 would report "grep: internal PCRE error: -27" # # Copyright 2015-2016 Free Software Foundation, Inc. # # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. . "${srcdir=.}/init.sh"; path_prepend_ ../src require_pcre_ nl_base64=$(echo | (base64) 2>/dev/null) && test "X$nl_base64" = XCg== || skip_ "your system lacks the base64 program" foo=$( (echo foo | gzip | gzip -d) 2>/dev/null) && test "X$foo" = Xfoo || skip_ "your system lacks the gzip program" fail=0 base64 -d >pcrejit.txt.gz <<'EOF' H4sIAAAAAAACA+2bUU4DMQxE/7mMz5T7XwKE+IBKVLue58yk0B9EtX6xJxN7t4VaH69a6+tHrW+/ r4e3n75KARWShSOFTtiumE3FPVyo79ATIJ0Ry0No/yXe99UIUqTGKKUzYHFJHJoaCONQDCnDSCDS IPAvGCVeXNsZ7lpbWFfdaZtgPos5LeK2C1TBKzD09V3HFlCOsbFT/hNbz4HzJaRjnjdam9FXw/o6 VyPozhMmiaRYAMeNSJR1iMjBEFLMtsH7lptartfxkzPQgFVofwRlxKsMYn2KNDnU9fsOQCkRIYVT G80ZRqBpSQjRYPX7s9gvtqknyNE2f8V09sxHM7YPmMMJgrmVna2AT717n5fUAIDkiBCqFgWUUgKD 8jOc0Rgj5JS6vZnQI14wkaTDAkD266p/iVHs8gjCrMFARVM0iEVgFAa9YRAQT4tkgsmloTJLmyCm uSHRnTkzIdZMmZ5kYX/iJFtTwu9cFvr3aDWcUx4pUW/cVQwPoQSlwguNd4M0vTpAauKodmLFXv1P dkcKkYUglER2Q4L4gnmOiNGzSBATwGQgwihs5/QffIhyfg4hJvM2r4Rp6L+1ibCCd4jYZ6jCiBlc 2+y4fl4yTGIwcWXNAUEeXmu8iCMV96DNTnmRNICDk2N5qaXGbsF91OX/0hlcYTjrMfy02p9Xv70D mv3RZCFOAAA= EOF test $? -eq 0 || framework_failure_ gzip -d pcrejit.txt || framework_failure_ LC_ALL=C grep -P -n '^([/](?!/)|[^/])*~/.*' pcrejit.txt if test $? != 1; then # The above often makes grep attempt to use an inordinate amount # of stack space. If grep fails with $? != 1, try gain, but this # time with no soft limit: # Use ulimit to remove that limit, if possible. # If ulimit is not usable, just skip this test. (ulimit -s unlimited; : ) || skip_ this shell lacks ulimit support # Rerun that same test, but now with no limit on stack size: (ulimit -s unlimited; LC_ALL=C grep -P -n '^([/](?!/)|[^/])*~/.*' pcrejit.txt) test $? = 1 || fail=1 fi Exit $fail