diff options
author | Rob Landley <rob@landley.net> | 2013-08-12 03:16:29 -0500 |
---|---|---|
committer | Rob Landley <rob@landley.net> | 2013-08-12 03:16:29 -0500 |
commit | 030970bd70e14849b0f2598bfa0982402fc7e2e7 (patch) | |
tree | 6c9dc6c4c42c3bb254f47e493a06c285e1ff9a9d /toys/pending | |
parent | 31f07104445bc0c0cbc942d86ee9d31d08c344d8 (diff) | |
download | toybox-030970bd70e14849b0f2598bfa0982402fc7e2e7.tar.gz |
grep: -om counts matching lines, not matching parts of lines.
Diffstat (limited to 'toys/pending')
-rw-r--r-- | toys/pending/grep.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/toys/pending/grep.c b/toys/pending/grep.c index 215c6d24..9c282ea7 100644 --- a/toys/pending/grep.c +++ b/toys/pending/grep.c @@ -67,6 +67,7 @@ static void do_grep(int fd, char *name) regmatch_t matches[3]; size_t unused; long len; + int mmatch = 0; lcount++; if (0 > (len = getline(&line, &unused, file))) break; @@ -121,7 +122,7 @@ static void do_grep(int fd, char *name) matches[which].rm_so = 0; } else if (rc) break; - mcount++; + mmatch++; if (toys.optflags & FLAG_q) { toys.exitval = 0; xexit(); @@ -152,6 +153,7 @@ static void do_grep(int fd, char *name) free(line); + if (mmatch) mcount++; if ((toys.optflags & FLAG_m) && mcount >= TT.m) break; } |