lesspipe.sh has some special matches to handle compressed man pages, and checks after decompression that these are man pages. It doesn't have backups incase it was just a normal file with a name which matched (eg less patch-2.4.1.bz2 just displays the compressed input) To fix, change the first two cases to be: *.1.gz|*.2.gz|*.3.gz|*.4.gz|*.5.gz|*.7.gz|*.8.gz|*.9.gz|*.n.gz|*.man.gz) if gunzip -c "$1" |file - |grep troff &>/dev/null; then gunzip -c "$1" |groff -s -p -t -e -Tlatin1 -mandoc - ; else gzip -dc "$1" 2>/dev/null ; fi ;; *.1.bz2|*.2.bz2|*.3.bz2|*.4.bz2|*.5.bz2|*.7.bz2|*.8.bz2|*.9.bz2|*.n.bz2|*.man.bz2 if bunzip2 -c "$1" |file - |grep troff &>/dev/null; then bunzip2 -c "$1" |groff -s -p -t -e -Tlatin1 -mandoc - else bzip2 -dc "$1" 2>/dev/null ; fi ;;
The current lesspipe.sh in rawhide is a significant rewrite of the less-358-7 version shipped with RH7.0. However, it exhibits the same bug as reported, in not handling non-manpage files with manpage-like names. See bug #17456 for a fix.
Thanks for this bugreport and the fix. less-358-13 contains a fix for this