In Bug 78, shortkey points out:
authorMike Frysinger <vapier@gentoo.org>
Sat, 16 Apr 2005 04:56:11 +0000 (04:56 -0000)
committerMike Frysinger <vapier@gentoo.org>
Sat, 16 Apr 2005 04:56:11 +0000 (04:56 -0000)
If you run `grep -h . file1 file2 file3 ...`, the output is not prefixed
with the filename.  If you run `grep -h . file1` however, the filename
will incorrectly prefix the output.

findutils/grep.c

index 29f4ecd..9b26add 100644 (file)
@@ -98,7 +98,7 @@ static void print_line(const char *line, int linenum, char decoration)
        }
        last_line_printed = linenum;
 #endif
-       if (print_filename)
+       if (print_filename > 0)
                printf("%s%c", cur_file, decoration);
        if (print_line_num)
                printf("%i%c", linenum, decoration);
@@ -219,7 +219,7 @@ static int grep_file(FILE *file)
 
        /* grep -c: print [filename:]count, even if count is zero */
        if (print_match_counts) {
-               if (print_filename)
+               if (print_filename > 0)
                        printf("%s:", cur_file);
                    printf("%d\n", nmatches);
        }