From: Junio C Hamano Date: Fri, 7 Dec 2007 07:20:18 +0000 (-0800) Subject: Merge branch 'maint' X-Git-Tag: v1.5.4-rc0~65 X-Git-Url: https://git.lorimer.id.au/gitweb.git/diff_plain/08e1812db1585c450bfe7f41e7106222346c88da?hp=-c Merge branch 'maint' * maint: Change from using email.com to example.com as example domain, as per RFC 2606. --- 08e1812db1585c450bfe7f41e7106222346c88da diff --combined ident.c index 07b4998f71,3f6c29b74d..7631698f27 --- a/ident.c +++ b/ident.c @@@ -113,15 -113,25 +113,15 @@@ static int add_raw(char *buf, size_t si static int crud(unsigned char c) { - static char crud_array[256]; - static int crud_array_initialized = 0; - - if (!crud_array_initialized) { - int k; - - for (k = 0; k <= 31; ++k) crud_array[k] = 1; - crud_array[' '] = 1; - crud_array['.'] = 1; - crud_array[','] = 1; - crud_array[':'] = 1; - crud_array[';'] = 1; - crud_array['<'] = 1; - crud_array['>'] = 1; - crud_array['"'] = 1; - crud_array['\''] = 1; - crud_array_initialized = 1; - } - return crud_array[c]; + return c <= 32 || + c == '.' || + c == ',' || + c == ':' || + c == ';' || + c == '<' || + c == '>' || + c == '"' || + c == '\''; } /* @@@ -175,21 -185,19 +175,21 @@@ static const char *env_hint "\n" "Run\n" "\n" - " git config --global user.email \"you@email.com\"\n" + " git config --global user.email \"you@example.com\"\n" " git config --global user.name \"Your Name\"\n" "\n" "to set your account\'s default identity.\n" "Omit --global to set the identity only in this repository.\n" "\n"; -const char *fmt_ident(const char *name, const char *email, - const char *date_str, int error_on_no_name) +static const char *fmt_ident_1(const char *name, const char *email, + const char *date_str, int flag) { static char buffer[1000]; char date[50]; int i; + int error_on_no_name = !!(flag & 01); + int name_addr_only = !!(flag & 02); setup_ident(); if (!name) @@@ -216,36 -224,20 +216,36 @@@ } strcpy(date, git_default_date); - if (date_str) + if (!name_addr_only && date_str) parse_date(date_str, date, sizeof(date)); i = copy(buffer, sizeof(buffer), 0, name); i = add_raw(buffer, sizeof(buffer), i, " <"); i = copy(buffer, sizeof(buffer), i, email); - i = add_raw(buffer, sizeof(buffer), i, "> "); - i = copy(buffer, sizeof(buffer), i, date); + if (!name_addr_only) { + i = add_raw(buffer, sizeof(buffer), i, "> "); + i = copy(buffer, sizeof(buffer), i, date); + } else { + i = add_raw(buffer, sizeof(buffer), i, ">"); + } if (i >= sizeof(buffer)) die("Impossibly long personal identifier"); buffer[i] = 0; return buffer; } +const char *fmt_ident(const char *name, const char *email, + const char *date_str, int error_on_no_name) +{ + int flag = (error_on_no_name ? 01 : 0); + return fmt_ident_1(name, email, date_str, flag); +} + +const char *fmt_name(const char *name, const char *email) +{ + return fmt_ident_1(name, email, NULL, 03); +} + const char *git_author_info(int error_on_no_name) { return fmt_ident(getenv("GIT_AUTHOR_NAME"),