aboutsummaryrefslogtreecommitdiff
path: root/cache.h
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2010-01-08 07:39:11 -0800
committerJunio C Hamano <gitster@pobox.com>2010-01-10 09:42:54 -0800
commit91c38a21089c4b30d35f392386c752a017ac6db0 (patch)
tree1777d7d8c6bd89f00fc4ac21c49705d532f6eca7 /cache.h
parent18e95f279ec62cc8d5e5ab709b162ccc55eebf0a (diff)
downloadgit-91c38a21089c4b30d35f392386c752a017ac6db0.tar.gz
git-91c38a21089c4b30d35f392386c752a017ac6db0.tar.xz
ident.c: check explicit identity for name and email separately
bb1ae3f (commit: Show committer if automatic, 2008-05-04) added a logic to check both name and email were given explicitly by the end user, but it assumed that fmt_ident() is never called before git_default_user_config() is called, which was fragile. The former calls setup_ident() and fills the "default" name and email, so the check in the config parser would have mistakenly said both are given even if only user.name was provided. Make the logic more robust by keeping track of name and email separately. Signed-off-by: Junio C Hamano <gitster@pobox.com> Acked-by: Santi BĂ©jar <santi@agolina.net>
Diffstat (limited to 'cache.h')
-rw-r--r--cache.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/cache.h b/cache.h
index bf468e523..16c8e8df4 100644
--- a/cache.h
+++ b/cache.h
@@ -925,6 +925,9 @@ extern const char *config_exclusive_filename;
#define MAX_GITNAME (1000)
extern char git_default_email[MAX_GITNAME];
extern char git_default_name[MAX_GITNAME];
+#define IDENT_NAME_GIVEN 01
+#define IDENT_MAIL_GIVEN 02
+#define IDENT_ALL_GIVEN (IDENT_NAME_GIVEN|IDENT_MAIL_GIVEN)
extern int user_ident_explicitly_given;
extern const char *git_commit_encoding;