Skip to content
  • Colin Walters's avatar
    GSubprocess: New class for spawning child processes · 5b48dc40
    Colin Walters authored and Allison Karlitskaya's avatar Allison Karlitskaya committed
    There are a number of nice things this class brings:
    
    0) Has a race-free termination API on all platforms (on UNIX, calls to
       kill() and waitpid() are coordinated as not to cause problems).
    1) Operates in terms of G{Input,Output}Stream, not file descriptors
    2) Standard GIO-style async API for wait() with cancellation
    3) Makes some simple cases easy, like synchronously spawning a
       process with an argument list
    4) Makes hard cases possible, like asynchronously running a process
       with stdout/stderr merged, output directly to a file path
    
    Much rewriting and code review from Ryan Lortie <desrt@desrt.ca>
    
    https://bugzilla.gnome.org/show_bug.cgi?id=672102
    5b48dc40