As a short-hand, we extract this flag into the local variable "name_addr_only". It's more accurate to simply negate this and refer to it as "want_date", which will be less confusing when we add more NO_* flags. While we're touching this part of the code, let's move the call to ident_default_date() only when we are actually going to use it, not when we have NO_DATE set, or when we get a date from the environment. Signed-off-by: Jeff King <peff@xxxxxxxx> --- Just refactoring for the next patch... ident.c | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/ident.c b/ident.c index f5160e1..59beef2 100644 --- a/ident.c +++ b/ident.c @@ -268,7 +268,7 @@ const char *fmt_ident(const char *name, const char *email, static struct strbuf ident = STRBUF_INIT; char date[50]; int error_on_no_name = (flag & IDENT_ERROR_ON_NO_NAME); - int name_addr_only = (flag & IDENT_NO_DATE); + int want_date = !(flag & IDENT_NO_DATE); if (!name) name = ident_default_name(); @@ -287,10 +287,13 @@ const char *fmt_ident(const char *name, const char *email, name = pw->pw_name; } - strcpy(date, ident_default_date()); - if (!name_addr_only && date_str && date_str[0]) { - if (parse_date(date_str, date, sizeof(date)) < 0) - die("invalid date format: %s", date_str); + if (want_date) { + if (date_str && date_str[0]) { + if (parse_date(date_str, date, sizeof(date)) < 0) + die("invalid date format: %s", date_str); + } + else + strcpy(date, ident_default_date()); } strbuf_reset(&ident); @@ -298,7 +301,7 @@ const char *fmt_ident(const char *name, const char *email, strbuf_addstr(&ident, " <"); strbuf_addstr_without_crud(&ident, email); strbuf_addch(&ident, '>'); - if (!name_addr_only) { + if (want_date) { strbuf_addch(&ident, ' '); strbuf_addstr_without_crud(&ident, date); } -- 1.7.10.1.25.g7031a0f -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html