Regenerate.
[gnulib.git] / lib / getlogin_r.c
index c02db2f..b9b76c6 100644 (file)
@@ -18,7 +18,7 @@
 
 /* written by Paul Eggert and Derek Price */
 
-#if HAVE_CONFIG_H
+#ifdef HAVE_CONFIG_H
 # include <config.h>
 #endif
 
@@ -44,8 +44,15 @@ getlogin_r (char *name, size_t size)
 
   errno = 0;
   n = getlogin ();
+
+  /* A system function like getlogin_r is never supposed to set errno
+     to zero, so make sure errno is nonzero here.  ENOENT is a
+     reasonable errno value if getlogin returns NULL.  */
+  if (!errno)
+    errno = ENOENT;
+
   if (!n)
-    return errno ? errno : ENOENT;
+    return errno;
   nlen = strlen (n);
   if (size <= nlen)
     return ERANGE;