Re: [PATCH 1/5] parseopt: fix :(optional) at command line to only ignore missing files
From: Phillip Wood <hidden>
Date: 2025-11-04 16:19:34
Hi Ben These all look good to me though I agree with Junio's comments on patch 3. It would be nice to get at least the fist patch merged in time for 2.52.0. Thanks for following up on these Phillip On 02/11/2025 16:17, D. Ben Knoble wrote:
quoted hunk ↗ jump to hunk
Unlike the configuration option magic, the parseopt code also ignores empty files: compare implementations from ccfcaf399f (parseopt: values of pathname type can be prefixed with :(optional), 2025-09-28) and 749d6d166d (config: values of pathname type can be prefixed with :(optional), 2025-09-28). Unify the 2 by not ignoring empty files, which is less surprising and the intended semantics from the first patch for config. Suggested-by: Phillip Wood <redacted> Signed-off-by: D. Ben Knoble <redacted> --- parse-options.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)diff --git a/parse-options.c b/parse-options.c index 5933468c19..6211b55a83 100644 --- a/parse-options.c +++ b/parse-options.c@@ -226,7 +226,7 @@ static enum parse_opt_result do_get_value(struct parse_opt_ctx_t *p, if (!value) is_optional = 0; value = fix_filename(p->prefix, value); - if (is_optional && is_empty_or_missing_file(value)) { + if (is_optional && is_missing_file(value)) { free((char *)value); } else { FREE_AND_NULL(*(char **)opt->value);