use NULL, '\0' instead of zeroes
authorJim Meyering <jim@meyering.net>
Wed, 10 Dec 1997 10:31:25 +0000 (10:31 +0000)
committerJim Meyering <jim@meyering.net>
Wed, 10 Dec 1997 10:31:25 +0000 (10:31 +0000)
src/su.c

index dda02fe..bd3c5b8 100644 (file)
--- a/src/su.c
+++ b/src/su.c
@@ -530,8 +530,10 @@ main (int argc, char **argv)
     error (1, 0, _("user %s does not exist"), new_user);
   endpwent ();
 
-  /* make sure pw->pw_shell is non-zero */
-  if (pw->pw_shell == 0 || pw->pw_shell[0] == 0)
+  /* Make sure pw->pw_shell is non-NULL.  It may be NULL when NEW_USER
+     is a username that is retrieved via NIS (YP), but that doesn't have
+     a default shell listed.  */
+  if (pw->pw_shell == NULL || pw->pw_shell[0] == '\0')
     pw->pw_shell = (char *) DEFAULT_SHELL;
 
   /* Make a copy of the password information and point pw at the local