Make sure we do not write bogus reflog entries.
[gitweb.git] / ident.c
diff --git a/ident.c b/ident.c
index d7faba6a70139020d9ee0a2f801ae2e6b567d4f4..f9677905e5aa64c94d912ea90f51d10a7f34bd39 100644 (file)
--- a/ident.c
+++ b/ident.c
@@ -7,9 +7,6 @@
  */
 #include "cache.h"
 
-#include <pwd.h>
-#include <netdb.h>
-
 static char git_default_date[50];
 
 static void copy_gecos(struct passwd *w, char *name, int sz)
@@ -183,12 +180,21 @@ static const char *get_ident(const char *name, const char *email,
                email = git_default_email;
 
        if (!*name) {
-               if (name == git_default_name && env_hint) {
+               struct passwd *pw;
+
+               if (0 <= error_on_no_name &&
+                   name == git_default_name && env_hint) {
                        fprintf(stderr, env_hint, au_env, co_env);
                        env_hint = NULL; /* warn only once, for "git-var -l" */
                }
-               if (error_on_no_name)
+               if (0 < error_on_no_name)
                        die("empty ident %s <%s> not allowed", name, email);
+               pw = getpwuid(getuid());
+               if (!pw)
+                       die("You don't exist. Go away!");
+               strlcpy(git_default_name, pw->pw_name,
+                       sizeof(git_default_name));
+               name = git_default_name;
        }
 
        strcpy(date, git_default_date);
@@ -221,18 +227,3 @@ const char *git_committer_info(int error_on_no_name)
                         getenv("GIT_COMMITTER_DATE"),
                         error_on_no_name);
 }
-
-void ignore_missing_committer_name()
-{
-       /* If we did not get a name from the user's gecos entry then
-        * git_default_name is empty; so instead load the username
-        * into it as a 'good enough for now' approximation of who
-        * this user is.
-        */
-       if (!*git_default_name) {
-               struct passwd *pw = getpwuid(getuid());
-               if (!pw)
-                       die("You don't exist. Go away!");
-               strlcpy(git_default_name, pw->pw_name, sizeof(git_default_name));
-       }
-}