Em 2010.07.24. 6:19, Doug Barton escreveu:
> There are several places in portmaster where I use '[e]grep -ql <foo>'
> to signal existence of something without having to deal with the
> output of grep. In oldgrep this worked as advertised. In bsdgrep it
> doesn't.
>
> Furthermore, looking at the code it doesn't seem like it's a trivial
> fix since you seem to be conflating the idea of -q with "don't output
> the matching lines" instead of "don't output anything" which is what
> the old one did:
>
> case 'l':
> Lflag = false;
> lflag = qflag = true;
> break;
>
> Also, looking at the code it's not clear to me that the -q option has
> its previous behavior of halting processing for that file on the first
> match, but I've only given it a quick look.
>
> So, request number 1, fix it so that bsdgrep -ql doesn't output
> anything, and make sure that -q actually halts processing on the first
> match.
Of course both this and the color issue will be fixed.
>
> Request number 2, think about whether or not introducing this as the
> default was the right course of action. I held my tongue on this when
> you committed it, but in the past when such things have been added
> they start life as an option, allowing those who choose to do so to
> regression test them. Once they've had a shakeout period THEN the
> switch is flipped to make them the default. I'm not at the point yet
> where I'm ready to ask for you to change this, but between the color
> thing and this issue, that ball has started to roll, in my mind at
> least. We'll see what happens with more testing.
This change was thoroughly tested on pointyhat and by several interested
people even by you. Actually, the compatibility for non-standard GNU
regexes were added when you requested it after trying out with
portmaster. Why didn't you tell me earlier about this bug then, as well?
Gabor