Adam D. Barratt wrote: > On Sat, 2009-05-30 at 21:31 -0500, Raphael Geissert wrote: >> Package: devscripts >> Version: 2.10.49 > > Are all of the issues you mentioned actually found by that version of > the script? (It's not even the latest /released/ version, and doubly > inaccurate if any of the issues only occur with the changes from your > last report).
By the time I last upgraded my machine, .49 was still in testing; and .50 doesn't include any change to checkbashisms anyway. And no, the FPs reported here are irrelevant to the other bug I submitted, as I plan to mention the "to be introduced" FPs in the other report :) > >> Severity: important > > Really? :-) Unless I've missed something in one of the reports, I don't > see what makes this particular set of misdetections more "important" > than any other tbh. Incorrectly counting the number of quotation marks and leading to some blocks not/being checked seemed important to me :). > > "Yay". The new and improved $"" check hasn't elicited any complaints for > over six months - I knew it was going too well. :-/ Cloned as #531326. > I hadn't performed an archive-wide run since, hence the lack of reports :) By the way, those are just some of the many samples, but most are too similar to include them all. >> gjots2_2.3.4-2.1_all.deb >> possible bashism in ./usr/bin/gjots2html line 76 (brace expansion): >> m4_changequote({{{{,}}}}) >> >> Caused due to incorrectly counting the number quotation marks. >> Fix: >> @@ -265,7 +265,7 @@ foreach my $filename (@ARGV) { >> $templine =~ s/$otherquote.*?$quote.*?$otherquote//g; >> # "\"" >> $templine =~ s/(^|[^\\])$quote\\$quote$quote/$1/g; >> - my $count = () = $templine =~ /(^|[^\\])$quote/g; >> + my $count = () = $templine =~ /(^|(?!\\))$quote/g; >> >> # If there's an odd number of non-escaped >> # quotes in the line it's almost certainly the > > Hmmm, okay. Note that while this may fix this instance, our bĂȘte noire > git-instaweb still isn't parsed correctly. :-/ I know :( I re-checked git-instaweb and some other FPs. > >> ------------------- [...] >> >> @@ -451,6 +451,9 @@ sub script_is_evil_and_wrong { >> >> $ret = $. - 1; >> last; >> + } elsif (m'@DPATCH@') { >> + $ret = $. - 1; >> + last; > > Yeah. It'll still miss cases where the dpatch includes a valid /bin/sh > script with bashisms, but it's better than nothing. > As long as those bashisms are above the @DPATCH@ line, they will be checked. Or did you mean something else? Cheers, -- Raphael Geissert - Debian Maintainer www.debian.org - get.debian.net -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org