document mingw linker fix and close associated bug
[debian/gzip] / zless.in
index 0aa940f0074139d190f9d7cd77fddcb114759ed3..d34068d2b195f05d909eb9873145c976abaef587 100644 (file)
--- a/zless.in
+++ b/zless.in
@@ -1,6 +1,6 @@
 #!/bin/sh
 
-# Copyright (C) 1998, 2002, 2006, 2007 Free Software Foundation
+# Copyright (C) 1998, 2002, 2006-2007, 2010-2018 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
 # with this program; if not, write to the Free Software Foundation, Inc.,
 # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
 
-bindir=@bindir@
-case $1 in
---__bindir) bindir=${2?}; shift; shift;;
-esac
-PATH=$bindir:$PATH; export PATH
-
 version="zless (gzip) @VERSION@
-Copyright (C) 2007, 2009-2010 Free Software Foundation, Inc.
+Copyright (C) 2007, 2011-2018 Free Software Foundation, Inc.
 This is free software.  You may redistribute copies of it under the terms of
-the GNU General Public License <http://www.gnu.org/licenses/gpl.html>.
+the GNU General Public License <https://www.gnu.org/licenses/gpl.html>.
 There is NO WARRANTY, to the extent permitted by law.
 
 Written by Paul Eggert."
@@ -38,8 +32,8 @@ Options are the same as for 'less'.
 Report bugs to <bug-gzip@gnu.org>."
 
 case $1 in
---help)    exec echo "$usage";;
---version) exec echo "$version";;
+--help)      printf '%s\n' "$usage"   || exit 1; exit;;
+--version)   printf '%s\n' "$version" || exit 1; exit;;
 esac
 
 if test "${LESSMETACHARS+set}" != set; then
@@ -53,5 +47,25 @@ if test "${LESSMETACHARS+set}" != set; then
   export LESSMETACHARS
 fi
 
-LESSOPEN="|-gzip -cdfq -- %s"; export LESSOPEN
+less_version=`less -V 2>/dev/null`
+case $less_version in
+less' '45[1-9]* | \
+less' '4[6-9][0-9]* | \
+less' '[5-9][0-9][0-9]* | \
+less' '[1-9][0-9][0-9][0-9]*)
+   check_exit_status='|';;
+*) check_exit_status='';;
+esac
+case $less_version in
+less' '429* | \
+less' '4[3-9][0-9]* | \
+less' '[5-9][0-9][0-9]* | \
+less' '[1-9][0-9][0-9][0-9]*)
+   use_input_pipe_on_stdin='-';;
+*) use_input_pipe_on_stdin='';;
+esac
+
+LESSOPEN="|$check_exit_status${use_input_pipe_on_stdin}gzip -cdfq -- %s"
+export LESSOPEN
+
 exec less "$@"