gzip: port zdiff, zless to Busybox
authorPaul Eggert <eggert@cs.ucla.edu>
Mon, 13 Mar 2017 23:35:55 +0000 (16:35 -0700)
committerPaul Eggert <eggert@cs.ucla.edu>
Mon, 13 Mar 2017 23:36:28 +0000 (16:36 -0700)
Problem reported by Denys Zagorui (Bug#26088).
* tests/zdiff: Check that diff uses POSIX-format output.
* zless.in (less_version): Don't exit merely because 'less -V'
fails; instead, assume 'less' is compatible with an old version of
the original 'less'.  Busybox 'less -V' fails, but apparently its
'less' works anyway somehow.

tests/zdiff
zless.in

index 7ed2f346692ffe3d47bf7886c97a1caf29a88a6c..e2ca65117a5d9442c092a2acf59f63caf86f7b32 100755 (executable)
@@ -22,7 +22,6 @@
 
 echo a > a || framework_failure_
 echo b > b || framework_failure_
-gzip a b || framework_failure_
 
 cat <<EOF > exp
 1c1
@@ -31,7 +30,10 @@ cat <<EOF > exp
 > b
 EOF
 
+diff a b | diff exp - || skip_ "diff output format is incompatible with POSIX"
+
 fail=0
+gzip a b || fail=1
 returns_ 1 zdiff a.gz b.gz > out 2>&1 || fail=1
 
 compare exp out || fail=1
index 25d6b8be72ae62d905d692c169f00f0cf7ee863b..fdcc49ad1d497ad11c524f10bfda3edfcd7ac953 100644 (file)
--- a/zless.in
+++ b/zless.in
@@ -47,7 +47,7 @@ if test "${LESSMETACHARS+set}" != set; then
   export LESSMETACHARS
 fi
 
-less_version=`less -V` || exit
+less_version=`less -V 2>/dev/null`
 case $less_version in
 less' '45[1-9]* | \
 less' '4[6-9][0-9]* | \