From fdd7679fea1fd71b24563a472a1f3fe87c2f3b98 Mon Sep 17 00:00:00 2001 From: Markus Armbruster Date: Sat, 21 Feb 2004 10:18:18 +0000 Subject: [PATCH] (parse): Trailing whitespace was interpreted as an another (empty) argument. Ignore it. --- src/lib/gen/parse.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/lib/gen/parse.c b/src/lib/gen/parse.c index e978b155..2b708c66 100644 --- a/src/lib/gen/parse.c +++ b/src/lib/gen/parse.c @@ -61,14 +61,12 @@ parse(register s_char *buf, s_char **argpp, s_char **condp, s_char *space, if (condp != 0) *condp = 0; for (argnum = 0; *buf && argnum < 100;) { - arg[argnum] = bp1; - argnum++; while (isspace(*buf)) buf++; + if (!*buf) + break; if (redir && (*buf == '>' || *buf == '|')) { *redir = buf; - argnum--; - arg[argnum] = 0; break; } quoted = 0; @@ -87,7 +85,9 @@ parse(register s_char *buf, s_char **argpp, s_char **condp, s_char *space, *bp1++ = 0; if (*bp2 == '?' && condp != 0) { *condp = bp2 + 1; - argnum--; + } else { + arg[argnum] = bp2; + argnum++; } } arg[argnum] = 0;