svn commit: r333351 - head/usr.bin/grep

Kyle Evans kevans at freebsd.org
Tue May 8 14:36:44 UTC 2018


On Tue, May 8, 2018 at 5:58 AM, Alexey Dokuchaev <danfe at freebsd.org> wrote:
> On Tue, May 08, 2018 at 03:53:47AM +0000, Kyle Evans wrote:
>> New Revision: 333351
>> URL: https://svnweb.freebsd.org/changeset/base/333351
>>
>> Log:
>>   bsdgrep: Allow "-" to be passed to -f to mean "standard input"
>>
>>   A version of this patch was originally sent to me by se@, matching behavior
>>   from newer versions of GNU grep.
>>
>> -     if ((f = fopen(fn, "r")) == NULL)
>> +     if (strcmp(fn, "-") == 0)
>> +             f = stdin;
>
> This makes sense: when `fn' is "-", `f' is stdin.
>
>> -     fclose(f);
>> +     if (strcmp(fn, "-") != 0)
>> +             fclose(f);
>
> But not this one: why are you checking `fn' again?  Shouldn't you fclose(f)
> if it's not stdin?
>
>         if (f != stdin)
>                 fclose(f);
>

You say potato, I say potato. =) In this case, it's low overhead in a
not particularly performance critical bit and drawing a connection
between this and the opening of 'f' above in an extremely obvious way.
Granted, there's only one way to get stdin here.

This also might get ripped out soon- we'll see how things go.


More information about the svn-src-all mailing list