GNU bug report logs - #35209
Bug in zdiff argument of an option separated by a space is not handled correctly

Previous Next

Package: gzip;

Reported by: Bram Mertens <mertensb.mazda <at> gmail.com>

Date: Tue, 9 Apr 2019 14:24:02 UTC

Severity: normal

Merged with 54290, 54291, 54298

Done: Paul Eggert <eggert <at> cs.ucla.edu>

Bug is archived. No further changes may be made.

Full log


Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Bram Mertens <mertensb.mazda <at> gmail.com>
To: bug-gzip <at> gnu.org
Subject: Bug in zdiff argument of an option separated by a space is not
 handled correctly
Date: Tue, 9 Apr 2019 16:11:14 +0200
Hi,

The zdiff script does not handle options with arguments separated by a
space correctly.

The following if a valid diff command: "diff -y -W 200 /tmp/b1 /tmp/b2".
But when passed to zdiff the space between "-W" and 200 causes the
COLUMNS argument to be interpreted as a file:
zdiff -y -W 200 /tmp/b1 /tmp/b2
/bin/zdiff: 72: /bin/zdiff: cannot open 200: No such file

The error is caused by the following line in the loop that processes
the arguments:
-?*) cmp="$cmp '$1'";; (line 63 in version  1.6)

There should be an additional check to catch options with arguments. I
couldn't come up with a working solution quickly so I am currently
using a workaround.
If I remove the space between the option "-W" and it's COLUMNS
argument the script works as expected.

With this workaround the zdiff utility is great solution for the
problem I'm working on, thanks!

Thanks in advance

Bram Mertens




This bug report was last modified 3 years and 50 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.