rem: if (getuid () == 0 || correct == 0 || correct[0] == '\0') return 1;
add: if (getuid () == 0 || !correct || correct[0] == '\0') return true;
context: correct_password (const struct passwd *pw){  char *unencrypted, *encrypted, *correct;#if HAVE_GETSPNAM && HAVE_STRUCT_SPWD_SP_PWDP  /* Shadow passwd stuff for SVR3 and maybe other systems.  */  struct spwd *sp = getspnam (pw->pw_name);  endspent ();  if (sp)    correct = sp->sp_pwdp;  else#endif    correct = pw->pw_passwd;  if (getuid () == 0 || correct == 0 || correct[0] == '\0')    return 1;  unencrypted = getpass (_("Password:"));  if (unencrypted == NULL)    {      error (0, 0, _("getpass: cannot open /dev/tty"));      return 0;    }  encrypted = crypt (unencrypted, correct);  memset (unencrypted, 0, strlen (unencrypted));  return strcmp (encrypted, correct) == 0;}