From: Toon Claes Date: Fri, 16 Jan 2026 13:22:50 +0000 (+0100) Subject: last-modified: add option '-z' to help output X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f1136ddeb04c7198ce5e71a7ef6e9a1904d1eeb8;p=thirdparty%2Fgit.git last-modified: add option '-z' to help output The parsing of option '-z' is done by diff_opt_parse(), which is called by setup_revisions(), and ends up filling in `struct diff_options::line_termination`. But that field isn't used by the diff machinery itself, only by builtin/last-modified.c to format the output. To have '-z' also appear in the help output of `git last-modified -h`, move the handling of '-z' to parse_options() in builtin/last-modified.c itself. Signed-off-by: Toon Claes Signed-off-by: Junio C Hamano --- diff --git a/builtin/last-modified.c b/builtin/last-modified.c index 80b805a589..bc51d16b92 100644 --- a/builtin/last-modified.c +++ b/builtin/last-modified.c @@ -55,6 +55,7 @@ struct last_modified { struct rev_info rev; bool recursive; bool show_trees; + bool null_termination; const char **all_paths; size_t all_paths_nr; @@ -165,10 +166,10 @@ static void last_modified_emit(struct last_modified *lm, putchar('^'); printf("%s\t", oid_to_hex(&commit->object.oid)); - if (lm->rev.diffopt.line_termination) - write_name_quoted(path, stdout, '\n'); - else + if (lm->null_termination) printf("%s%c", path, '\0'); + else + write_name_quoted(path, stdout, '\n'); } static void mark_path(const char *path, const struct object_id *oid, @@ -520,6 +521,8 @@ int cmd_last_modified(int argc, const char **argv, const char *prefix, N_("recurse into subtrees")), OPT_BOOL('t', "show-trees", &lm.show_trees, N_("show tree entries when recursing into subtrees")), + OPT_BOOL('z', NULL, &lm.null_termination, + N_("lines are separated with NUL character")), OPT_END() };