svn commit: r245057 - head/usr.bin/grep
Gabor Kovesdan
gabor at FreeBSD.org
Sat Jan 5 14:52:32 UTC 2013
Author: gabor
Date: Sat Jan 5 14:52:31 2013
New Revision: 245057
URL: http://svnweb.freebsd.org/changeset/base/245057
Log:
- Fix handling of the case when multiple patterns are specified in a single
command line argument, separated by newlines
PR: bin/173673
Submitted by: ache
MFC after: 1 week
Modified:
head/usr.bin/grep/grep.c
Modified: head/usr.bin/grep/grep.c
==============================================================================
--- head/usr.bin/grep/grep.c Sat Jan 5 11:13:48 2013 (r245056)
+++ head/usr.bin/grep/grep.c Sat Jan 5 14:52:31 2013 (r245057)
@@ -479,7 +479,13 @@ main(int argc, char *argv[])
grepbehave = GREP_EXTENDED;
break;
case 'e':
- add_pattern(optarg, strlen(optarg));
+ {
+ char *token;
+ char *string = strdup(optarg);
+
+ while ((token = strsep(&string, "\n")) != NULL)
+ add_pattern(token, strlen(token));
+ }
needpattern = 0;
break;
case 'F':
@@ -668,7 +674,11 @@ main(int argc, char *argv[])
/* Process patterns from command line */
if (aargc != 0 && needpattern) {
- add_pattern(*aargv, strlen(*aargv));
+ char *token;
+ char *string = strdup(*aargv);
+
+ while ((token = strsep(&string, "\n")) != NULL)
+ add_pattern(token, strlen(token));
--aargc;
++aargv;
}
More information about the svn-src-all
mailing list