--- shadow-4.0.4.1/src/newgrp.c.orig	2003-07-29 01:16:04.000000000 -0500
+++ shadow-4.0.4.1/src/newgrp.c	2004-04-06 21:43:41.000000000 -0500
@@ -76,6 +76,7 @@
 	gid_t gid;
 	char *cp;
 	const char *cpasswd, *name, *prog;
+	char *loginname = NULL;
 	char *group = NULL;
 	char *command = NULL;
 	char **envp = environ;
@@ -381,7 +382,9 @@
 		SYSLOG ((LOG_INFO, "user `%s' switched to group `%s'",
 			 name, group));
 	if (getdef_bool ("SYSLOG_SG_ENAB")) {
-		char *loginname = xstrdup (getlogin ());
+                char *user = getlogin ();
+                if (user != NULL)
+                        loginname = xstrdup (user);
 		char *tty = xstrdup (ttyname (0));
 
 		if (loginname == NULL)
