diff options
author | William Jon McCann <jmccann@redhat.com> | 2010-06-30 10:20:43 -0400 |
---|---|---|
committer | Ray Strode <rstrode@redhat.com> | 2010-08-17 13:45:20 -0400 |
commit | 9310418c63258dfd70cef46e2682cd9adc6c8f21 (patch) | |
tree | 3931193258559e6570482801acebc46b3aed3d1f /daemon/main.c | |
parent | 36e72382eb19c31ee9e59b72f27cb8537ef960dd (diff) | |
download | gdm-9310418c63258dfd70cef46e2682cd9adc6c8f21.tar.gz |
Wrap getpw* calls to retry in EINTR
if getpwnam(username) returns NULL, errno needs to be
checked for EINTR. This indicates that a signal was received while waiting for
the blocking call to return, and getpwnam() should be retried.
Diffstat (limited to 'daemon/main.c')
-rw-r--r-- | daemon/main.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/daemon/main.c b/daemon/main.c index cfbc6c48..19bdf302 100644 --- a/daemon/main.c +++ b/daemon/main.c @@ -402,7 +402,7 @@ gdm_daemon_change_user (uid_t *uidp, g_debug ("Changing user:group to %s:%s", username, groupname); /* Lookup user and groupid for the GDM user */ - pwent = getpwnam (username); + gdm_get_pwent_for_name (username, &pwent); /* Set uid and gid */ if G_UNLIKELY (pwent == NULL) { |