[glib] gspawn: Fix leak of internal pipe with G_SPAWN_LEAVE_DESCRIPTORS_OPEN



commit e55ccf7338f2eb68f08d648855a4a92a091df690
Author: Paul Barbieri <paul barbieri baesystems com>
Date:   Mon Jul 1 21:10:28 2013 +0100

    gspawn: Fix leak of internal pipe with G_SPAWN_LEAVE_DESCRIPTORS_OPEN
    
    Even when the app author specifies G_SPAWN_LEAVE_DESCRIPTORS_OPEN,
    we should avoid leaking our internal pipe machinery into the
    child.
    
    Commit message written by: Colin Walters <walters verbum org>
    
    https://bugzilla.gnome.org/show_bug.cgi?id=703407

 glib/gspawn.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)
---
diff --git a/glib/gspawn.c b/glib/gspawn.c
index f9baaa3..3db3c8d 100644
--- a/glib/gspawn.c
+++ b/glib/gspawn.c
@@ -1395,6 +1395,7 @@ fork_exec_with_pipes (gboolean              intermediate_child,
             }
           else if (grandchild_pid == 0)
             {
+              close_and_invalidate (&child_pid_report_pipe[1]);
               do_exec (child_err_report_pipe[1],
                        stdin_pipe[0],
                        stdout_pipe[1],


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]