12ffba0 Make shell parent of pkexec

Authored and Committed by msekleta 7 years ago
    Make shell parent of pkexec
    
    In case when mtr-gtk is started from gnome-shell we need to make sure
    that parent process of pkexec is not systemd. This is because pkexec
    exits with error if it detects that its parent is PID 1 [1].
    
    Execing pkexec was fine before F22, because previously gnome-shell was
    reaping processes it spawned. Since F22 gnome-shell doesn't do that and
    it calls g_spawn_async w/o G_SPAWN_DO_NOT_REAP_CHILD flag in which case
    glib really doesn't bother with reaping child processes properly and
    instead it does double fork(). Intermediate child process goes away and
    grand-child is then reparented to PID 1 that will reap it. [2]
    
    [1] https://cgit.freedesktop.org/polkit/commit/src/programs/pkexec.c?id=3b12cfac29dddd27f1f166a7574d8374cc1dccf2
    [2] https://git.gnome.org/browse/gnome-shell/commit/?id=01c6392c1373cf23786a0dad1b670a511107349c
    
        
file modified
+1 -1