Browse Source

move identity config parsing to ident.c

There's no reason for this to be in config, except that once
upon a time all of the config parsing was there. It makes
more sense to keep the ident code together.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
maint
Jeff King 13 years ago committed by Junio C Hamano
parent
commit
9597921b6c
  1. 1
      cache.h
  2. 24
      config.c
  3. 21
      ident.c

1
cache.h

@ -899,6 +899,7 @@ extern const char *ident_default_email(void); @@ -899,6 +899,7 @@ extern const char *ident_default_email(void);
extern const char *ident_default_date(void);
extern const char *git_editor(void);
extern const char *git_pager(int stdout_is_tty);
extern int git_ident_config(const char *, const char *, void *);

struct ident_split {
const char *name_begin;

24
config.c

@ -762,28 +762,6 @@ static int git_default_core_config(const char *var, const char *value) @@ -762,28 +762,6 @@ static int git_default_core_config(const char *var, const char *value)
return 0;
}

static int git_default_user_config(const char *var, const char *value)
{
if (!strcmp(var, "user.name")) {
if (!value)
return config_error_nonbool(var);
strlcpy(git_default_name, value, sizeof(git_default_name));
user_ident_explicitly_given |= IDENT_NAME_GIVEN;
return 0;
}

if (!strcmp(var, "user.email")) {
if (!value)
return config_error_nonbool(var);
strlcpy(git_default_email, value, sizeof(git_default_email));
user_ident_explicitly_given |= IDENT_MAIL_GIVEN;
return 0;
}

/* Add other config variables here and to Documentation/config.txt. */
return 0;
}

static int git_default_i18n_config(const char *var, const char *value)
{
if (!strcmp(var, "i18n.commitencoding"))
@ -870,7 +848,7 @@ int git_default_config(const char *var, const char *value, void *dummy) @@ -870,7 +848,7 @@ int git_default_config(const char *var, const char *value, void *dummy)
return git_default_core_config(var, value);

if (!prefixcmp(var, "user."))
return git_default_user_config(var, value);
return git_ident_config(var, value, dummy);

if (!prefixcmp(var, "i18n."))
return git_default_i18n_config(var, value);

21
ident.c

@ -388,3 +388,24 @@ int user_ident_sufficiently_given(void) @@ -388,3 +388,24 @@ int user_ident_sufficiently_given(void)
return (user_ident_explicitly_given == IDENT_ALL_GIVEN);
#endif
}

int git_ident_config(const char *var, const char *value, void *data)
{
if (!strcmp(var, "user.name")) {
if (!value)
return config_error_nonbool(var);
strlcpy(git_default_name, value, sizeof(git_default_name));
user_ident_explicitly_given |= IDENT_NAME_GIVEN;
return 0;
}

if (!strcmp(var, "user.email")) {
if (!value)
return config_error_nonbool(var);
strlcpy(git_default_email, value, sizeof(git_default_email));
user_ident_explicitly_given |= IDENT_MAIL_GIVEN;
return 0;
}

return 0;
}

Loading…
Cancel
Save