nvidia driver workaround atexit handlers for pam auth

this works around an apparently atexit() handler in nvidia drivers
that if you fork() a parent and do NOT exec() then the child process
will end up messing with the parent processes access to the nvidia
devices/display/whatever i believe via an atexit() handler because
moving from exit() to _exit() solves the issue. fixes T6197

@fix
This commit is contained in:
Carsten Haitzler 2017-10-30 13:11:06 +09:00
parent df55db07df
commit 4f8e3acfcf
1 changed files with 3 additions and 3 deletions

View File

@ -236,7 +236,7 @@ e_auth_begin(char *passwd)
if (pamerr != PAM_SUCCESS)
{
free(current_user);
exit(1);
_exit(1);
}
pamerr = pam_authenticate(da.pam.handle, 0);
pam_end(da.pam.handle, pamerr);
@ -246,10 +246,10 @@ e_auth_begin(char *passwd)
if (pamerr == PAM_SUCCESS)
{
free(current_user);
exit(0);
_exit(0);
}
free(current_user);
exit(-1);
_exit(-1);
return 0;
}