On 09/23/2014 12:53 AM, Bernhard Voelker wrote: > On 09/22/2014 11:42 PM, Bernhard Voelker wrote: >> On 09/22/2014 10:11 PM, Andreas Schwab wrote: >>> Pádraig Brady <[email protected]> writes: >>>> On 09/22/2014 10:53 AM, Alban Bedel wrote: >>> Huh? >>> >>> $ man/dummy-man foo >>> man/dummy-man: too many non-option arguments >>> >>> Andreas. >>> >> >> oops, in commit b3578fc9ffe70b9466687f9f6470a85f1a0ab14f >> I added the --info-page=... option _after_ the program argument >> in local.mk. The original help2man doesn't have a problem with >> that, as it does the normal GNU option parsing, but the parsing >> loop in dummy-man stops parsing when it hit the program argument, >> thus leaving $# = 2 (and the --info-page option unused). >> >> I'll propose a fix for both the test in dummy-man and local.mk >> soon. > > The proper fix for 'dummy-man' would have been to read the program > name argument in the above while loop, checking that such a non-option > argument has only been passed once, and then check the final remaining > argument count again. > I took the easier road, and only fixed the error condition in patch 1, > while patch 2 fixes the caller in local.mk. > > Have a nice day, > Berny > > >>From bf2057b20b6c84d792816898dcded905bfdb146f Mon Sep 17 00:00:00 2001 > From: Bernhard Voelker <[email protected]> > Date: Tue, 23 Sep 2014 01:44:51 +0200 > Subject: [PATCH 1/2] build: fix argument count check in dummy-man again > > * man/dummy-man: Fix argument count check, now only permitting > exactly 1 argument, the program name. > Reported by Andreas Schwab <[email protected]> > --- > man/dummy-man | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/man/dummy-man b/man/dummy-man > index 65b85d5..bf31912 100755 > --- a/man/dummy-man > +++ b/man/dummy-man > @@ -39,7 +39,7 @@ while test $# -gt 0; do > done > > test $# -gt 0 || fatal_ "missing argument" > -test $# -gt 1 || fatal_ "too many non-option arguments" > +test $# -le 1 || fatal_ "too many non-option arguments" > > baseout=`basename_ "$output"` > sed 's/^/WARNING: /' >&2 <<END
Oops right. I did check that the patch caused dummy-man to "work" though that was only accidental. The above two patches are obviously the correct fix. thanks, Pádraig.
