sequencer: allow callers of read_author_script() to ignore fields

The current callers of the read_author_script() function read name,
email and date from the author script.  Allow callers to signal that
they are not interested in some among these three fields by passing
NULL.

Note that fields that are ignored still must exist and be formatted
correctly in the author script.

Signed-off-by: Rohit Ashiwal <rohit.ashiwal265@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Rohit Ashiwal 2019-11-01 19:29:59 +05:30 committed by Junio C Hamano
parent ba51d2fb24
commit c068bcc59b

View File

@ -824,9 +824,19 @@ int read_author_script(const char *path, char **name, char **email, char **date,
error(_("missing 'GIT_AUTHOR_DATE'"));
if (date_i < 0 || email_i < 0 || date_i < 0 || err)
goto finish;
*name = kv.items[name_i].util;
*email = kv.items[email_i].util;
*date = kv.items[date_i].util;
if (name)
*name = kv.items[name_i].util;
else
free(kv.items[name_i].util);
if (email)
*email = kv.items[email_i].util;
else
free(kv.items[email_i].util);
if (date)
*date = kv.items[date_i].util;
else
free(kv.items[date_i].util);
retval = 0;
finish:
string_list_clear(&kv, !!retval);