diff --git a/usr.bin/xargs/tests/Makefile b/usr.bin/xargs/tests/Makefile --- a/usr.bin/xargs/tests/Makefile +++ b/usr.bin/xargs/tests/Makefile @@ -15,6 +15,7 @@ ${PACKAGE}FILES+= regress.L.out ${PACKAGE}FILES+= regress.P1.out ${PACKAGE}FILES+= regress.R.out +${PACKAGE}FILES+= regress.R-1.out ${PACKAGE}FILES+= regress.in ${PACKAGE}FILES+= regress.n1.out ${PACKAGE}FILES+= regress.n2.out diff --git a/usr.bin/xargs/tests/regress.R-1.out b/usr.bin/xargs/tests/regress.R-1.out new file mode 100644 --- /dev/null +++ b/usr.bin/xargs/tests/regress.R-1.out @@ -0,0 +1,4 @@ +The quick brown quick brown quick brown quick brownquick brown quick brown quick brown +The fox jumped fox jumped fox jumped fox jumpedfox jumped fox jumped fox jumped +The over the lazy over the lazy over the lazy over the lazyover the lazy over the lazy over the lazy +The dog dog dog dogdog dog dog diff --git a/usr.bin/xargs/tests/regress.sh b/usr.bin/xargs/tests/regress.sh --- a/usr.bin/xargs/tests/regress.sh +++ b/usr.bin/xargs/tests/regress.sh @@ -1,6 +1,6 @@ # $FreeBSD$ -echo 1..20 +echo 1..21 REGRESSION_START($1) @@ -10,6 +10,7 @@ REGRESSION_TEST(`L', `xargs -L3 echo <${SRCDIR}/regress.in') REGRESSION_TEST(`P1', `xargs -P1 echo <${SRCDIR}/regress.in') REGRESSION_TEST(`R', `xargs -I% -R1 echo The % % % %% % % <${SRCDIR}/regress.in') +REGRESSION_TEST(`R-1', `xargs -I% -R-1 echo The % % % %% % % <${SRCDIR}/regress.in') REGRESSION_TEST(`n1', `xargs -n1 echo <${SRCDIR}/regress.in') REGRESSION_TEST(`n2', `xargs -n2 echo <${SRCDIR}/regress.in') REGRESSION_TEST(`n2P0',`xargs -n2 -P0 echo <${SRCDIR}/regress.in | sort') diff --git a/usr.bin/xargs/xargs.c b/usr.bin/xargs/xargs.c --- a/usr.bin/xargs/xargs.c +++ b/usr.bin/xargs/xargs.c @@ -200,7 +200,7 @@ pflag = 1; break; case 'R': - Rflag = (int)strtonum(optarg, 0, INT_MAX, &errstr); + Rflag = (int)strtonum(optarg, INT_MIN, INT_MAX, &errstr); if (errstr) errx(1, "-%c %s: %s", ch, optarg, errstr); break;