raster pushed a commit to branch master.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=4f8e3acfcf9a2a42e044a52038250b4632fdc38c

commit 4f8e3acfcf9a2a42e044a52038250b4632fdc38c
Author: Carsten Haitzler (Rasterman) <ras...@rasterman.com>
Date:   Mon Oct 30 13:11:06 2017 +0900

    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
---
 src/bin/e_auth.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/bin/e_auth.c b/src/bin/e_auth.c
index 9754ce2d9..2fabc25a6 100644
--- a/src/bin/e_auth.c
+++ b/src/bin/e_auth.c
@@ -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;
 }

-- 


Reply via email to