mirror of git://git.suckless.org/sbase
xargs: Read full lines is -I
POSIX specifies that when -I is used then arguments are delimited only by newlines.
This commit is contained in:
parent
fc85dc819d
commit
2cbf61dff9
7
xargs.c
7
xargs.c
|
@ -111,7 +111,11 @@ poparg(void)
|
||||||
return NULL;
|
return NULL;
|
||||||
while ((ch = inputc()) != EOF) {
|
while ((ch = inputc()) != EOF) {
|
||||||
switch (ch) {
|
switch (ch) {
|
||||||
case ' ': case '\t': case '\n':
|
case ' ':
|
||||||
|
case '\t':
|
||||||
|
if (Iflag)
|
||||||
|
goto fill;
|
||||||
|
case '\n':
|
||||||
goto out;
|
goto out;
|
||||||
case '\'':
|
case '\'':
|
||||||
if (parsequote('\'') < 0)
|
if (parsequote('\'') < 0)
|
||||||
|
@ -126,6 +130,7 @@ poparg(void)
|
||||||
eprintf("backslash at EOF\n");
|
eprintf("backslash at EOF\n");
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
|
fill:
|
||||||
fillargbuf(ch);
|
fillargbuf(ch);
|
||||||
argbpos++;
|
argbpos++;
|
||||||
break;
|
break;
|
||||||
|
|
Loading…
Reference in New Issue