BUG/MINOR: config: fix arg number reported on empty arg warning

If an empty argument is used in configuration, for example due to an
undefined environment variable, the rest of the line is not parsed. As
such, a warning is emitted to report this.

The warning was not totally correct as it reported the wrong argument
index. Fix this by this patch. Note that there is still an issue with
the "^" indicator, but this is not as easy to fix yet.

This is related to github issue #2995.

This should be backported up to 3.2.
This commit is contained in:
Amaury Denoyelle 2025-06-04 15:36:13 +02:00
parent 5f1fad1690
commit 0cdf529720

View File

@ -2087,8 +2087,8 @@ next_line:
/* sanitize input line in-place */
newpos = sanitize_for_printing(line, errptr - line, 80);
ha_warning("parsing [%s:%d]: argument number %d at position %d is empty and marks the end of the "
"argument list; all subsequent arguments will be ignored:\n %s\n %*s\n",
file, linenum, check_arg + 1, (int)(errptr - thisline + 1), line, (int)(newpos+1), "^");
"argument list; all subsequent arguments will be ignored:\n %s\n %*s\n",
file, linenum, check_arg, (int)(errptr - thisline + 1), line, (int)(newpos + 1), "^");
break;
}
}