xargs: disallow -R0 and -L0
Both cases were interpreted as these flags are unset. This meant that -R0 got converted to -R5 and that -L0 didn't have any effect at all. Since make at most 0 replacements isn't useful and since call utility for every 0 lines read doesn't make sense, throw an error for these two cases. MFC after: 1 week Reviewed by: des, kevans Differential Revision: https://reviews.freebsd.org/D41022
This commit is contained in:
parent
202adb2236
commit
1048a870e3
@ -174,7 +174,7 @@ main(int argc, char *argv[])
|
||||
replstr = optarg;
|
||||
break;
|
||||
case 'L':
|
||||
Lflag = (int)strtonum(optarg, 0, INT_MAX, &errstr);
|
||||
Lflag = (int)strtonum(optarg, 1, INT_MAX, &errstr);
|
||||
if (errstr)
|
||||
errx(1, "-%c %s: %s", ch, optarg, errstr);
|
||||
break;
|
||||
@ -203,6 +203,8 @@ main(int argc, char *argv[])
|
||||
Rflag = (int)strtonum(optarg, INT_MIN, INT_MAX, &errstr);
|
||||
if (errstr)
|
||||
errx(1, "-%c %s: %s", ch, optarg, errstr);
|
||||
if (!Rflag)
|
||||
errx(1, "-%c %s: %s", ch, optarg, "must be non-zero");
|
||||
break;
|
||||
case 'r':
|
||||
/* GNU compatibility */
|
||||
|
Loading…
Reference in New Issue
Block a user