Package: debianutils Version: 2.20.1 Severity: normal Tags: patch
When starting savelog with the -j option, while bzip2 in not installed, caused the file that was supposed to be compressed to be lost. The lost file is overwritten because no checks are made if the compression succeded. I came across this bug in version 2.17 (etch), but since only a single nonrelated line changed in unstable it seemd better to file it against 2.20.1. This could also happen for gzip, if it weren't installed. I suggest adding a check at start of this script, as demonstrated in the attached patch. Another possible solution would be to add a verification step after compression. Greetz, Herman van Rink -- System Information: Debian Release: 4.0 APT prefers stable APT policy: (500, 'stable') Architecture: i386 (i686) Shell: /bin/sh linked to /bin/bash Kernel: Linux 2.6.18-4-686-bigmem Locale: LANG=en_US, LC_CTYPE=en_US (charmap=ISO-8859-1) Versions of packages debianutils depends on: ii coreutils 5.97-5.3 The GNU core utilities ii libc6 2.3.6.ds1-13 GNU C Library: Shared libraries ii mktemp 1.5-2 Makes unique filenames for tempora debianutils recommends no packages. -- no debconf information
--- savelog-2.20.1 2007-06-08 17:47:18.000000000 +0200 +++ savelog 2007-06-08 17:48:20.000000000 +0200 @@ -158,6 +158,11 @@ exit 2 fi +if [ -n "$COMPRESS" ] && [ -z "`which $COMPRESS`" ]; then + echo "$prog: Compression binary not available, please make sure '$COMPRESS' is installed" 1>&2 + exit 2 +fi + # cycle thru filenames while [ $# -gt 0 ]; do