BUG/MINOR: config: don't count trailing spaces as empty arg

In parse_line(), spaces increment the arg count and it is incremented
again on '#' or end of line, resulting in an extra empty arg at the
end of arg's list. The visible effect is that the reported arg count
is in excess of 1. It doesn't seem to affect regular function but
specialized ones like anonymisation depends on this count.

This may need to be backported to stable versions.
This commit is contained in:
Erwan Le Goas 2022-09-23 15:06:34 +02:00 committed by Christopher Faulet
parent 3a374eaeeb
commit 5529424ef1

View File

@ -5750,7 +5750,10 @@ uint32_t parse_line(char *in, char *out, size_t *outlen, char **args, int *nbarg
/* end of output string */
EMIT_CHAR(0);
arg++;
/* don't add empty arg after trailing spaces */
if (arg < argsmax && args[arg] && *(args[arg]))
arg++;
if (quote) {
/* unmatched quote */