• Colin Walters's avatar
    GSubprocess: New class for spawning child processes · 5b48dc40
    Colin Walters authored
    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
Name
Last commit
Last update
..
completion Loading commit data...
fam Loading commit data...
fen Loading commit data...
gdbus-2.0/codegen Loading commit data...
gvdb Loading commit data...
inotify Loading commit data...
kqueue Loading commit data...
tests Loading commit data...
win32 Loading commit data...
xdgmime Loading commit data...
.gitignore Loading commit data...
ChangeLog Loading commit data...
Makefile.am Loading commit data...
data-to-c.pl Loading commit data...
dbus-daemon.xml Loading commit data...
gaction.c Loading commit data...
gaction.h Loading commit data...
gactiongroup.c Loading commit data...
gactiongroup.h Loading commit data...
gactiongroupexporter.c Loading commit data...
gactiongroupexporter.h Loading commit data...
gactionmap.c Loading commit data...
gactionmap.h Loading commit data...
gappinfo.c Loading commit data...
gappinfo.h Loading commit data...
gapplication-tool.c Loading commit data...
gapplication.c Loading commit data...
gapplication.h Loading commit data...
gapplicationcommandline.c Loading commit data...
gapplicationcommandline.h Loading commit data...
gapplicationimpl-dbus.c Loading commit data...
gapplicationimpl.h Loading commit data...
gasynchelper.c Loading commit data...
gasynchelper.h Loading commit data...
gasyncinitable.c Loading commit data...
gasyncinitable.h Loading commit data...
gasyncresult.c Loading commit data...
gasyncresult.h Loading commit data...
gbufferedinputstream.c Loading commit data...
gbufferedinputstream.h Loading commit data...
gbufferedoutputstream.c Loading commit data...
gbufferedoutputstream.h Loading commit data...
gbytesicon.c Loading commit data...
gbytesicon.h Loading commit data...
gcancellable.c Loading commit data...
gcancellable.h Loading commit data...
gcharsetconverter.c Loading commit data...
gcharsetconverter.h Loading commit data...
gcontenttype-win32.c Loading commit data...
gcontenttype.c Loading commit data...
gcontenttype.h Loading commit data...
gcontenttypeprivate.h Loading commit data...
gconverter.c Loading commit data...
gconverter.h Loading commit data...
gconverterinputstream.c Loading commit data...
gconverterinputstream.h Loading commit data...
gconverteroutputstream.c Loading commit data...
gconverteroutputstream.h Loading commit data...
gcredentials.c Loading commit data...
gcredentials.h Loading commit data...
gcredentialsprivate.h Loading commit data...
gdatainputstream.c Loading commit data...
gdatainputstream.h Loading commit data...
gdataoutputstream.c Loading commit data...
gdataoutputstream.h Loading commit data...
gdbus-tool.c Loading commit data...
gdbusactiongroup-private.h Loading commit data...
gdbusactiongroup.c Loading commit data...
gdbusactiongroup.h Loading commit data...
gdbusaddress.c Loading commit data...
gdbusaddress.h Loading commit data...
gdbusauth.c Loading commit data...
gdbusauth.h Loading commit data...
gdbusauthmechanism.c Loading commit data...
gdbusauthmechanism.h Loading commit data...
gdbusauthmechanismanon.c Loading commit data...
gdbusauthmechanismanon.h Loading commit data...
gdbusauthmechanismexternal.c Loading commit data...
gdbusauthmechanismexternal.h Loading commit data...
gdbusauthmechanismsha1.c Loading commit data...
gdbusauthmechanismsha1.h Loading commit data...
gdbusauthobserver.c Loading commit data...
gdbusauthobserver.h Loading commit data...
gdbusconnection.c Loading commit data...
gdbusconnection.h Loading commit data...
gdbusdaemon.c Loading commit data...
gdbusdaemon.h Loading commit data...
gdbuserror.c Loading commit data...
gdbuserror.h Loading commit data...
gdbusinterface.c Loading commit data...
gdbusinterface.h Loading commit data...
gdbusinterfaceskeleton.c Loading commit data...
gdbusinterfaceskeleton.h Loading commit data...
gdbusintrospection.c Loading commit data...
gdbusintrospection.h Loading commit data...
gdbusmenumodel.c Loading commit data...
gdbusmenumodel.h Loading commit data...
gdbusmessage.c Loading commit data...
gdbusmessage.h Loading commit data...
gdbusmethodinvocation.c Loading commit data...
gdbusmethodinvocation.h Loading commit data...
gdbusnameowning.c Loading commit data...
gdbusnameowning.h Loading commit data...
gdbusnamewatching.c Loading commit data...
gdbusnamewatching.h Loading commit data...
gdbusobject.c Loading commit data...
gdbusobject.h Loading commit data...
gdbusobjectmanager.c Loading commit data...
gdbusobjectmanager.h Loading commit data...
gdbusobjectmanagerclient.c Loading commit data...
gdbusobjectmanagerclient.h Loading commit data...
gdbusobjectmanagerserver.c Loading commit data...
gdbusobjectmanagerserver.h Loading commit data...
gdbusobjectproxy.c Loading commit data...
gdbusobjectproxy.h Loading commit data...
gdbusobjectskeleton.c Loading commit data...
gdbusobjectskeleton.h Loading commit data...
gdbusprivate.c Loading commit data...
gdbusprivate.h Loading commit data...
gdbusproxy.c Loading commit data...
gdbusproxy.h Loading commit data...
gdbusserver.c Loading commit data...
gdbusserver.h Loading commit data...
gdbusutils.c Loading commit data...
gdbusutils.h Loading commit data...
gdelayedsettingsbackend.c Loading commit data...
gdelayedsettingsbackend.h Loading commit data...
gdesktopappinfo.c Loading commit data...
gdesktopappinfo.h Loading commit data...
gdrive.c Loading commit data...
gdrive.h Loading commit data...
gdummyfile.c Loading commit data...
gdummyfile.h Loading commit data...
gdummyproxyresolver.c Loading commit data...
gdummyproxyresolver.h Loading commit data...
gdummytlsbackend.c Loading commit data...
gdummytlsbackend.h Loading commit data...
gemblem.c Loading commit data...
gemblem.h Loading commit data...
gemblemedicon.c Loading commit data...
gemblemedicon.h Loading commit data...
gfile.c Loading commit data...
gfile.h Loading commit data...
gfileattribute-priv.h Loading commit data...
gfileattribute.c Loading commit data...
gfileattribute.h Loading commit data...
gfiledescriptorbased.c Loading commit data...
gfiledescriptorbased.h Loading commit data...
gfileenumerator.c Loading commit data...
gfileenumerator.h Loading commit data...
gfileicon.c Loading commit data...
gfileicon.h Loading commit data...
gfileinfo-priv.h Loading commit data...
gfileinfo.c Loading commit data...
gfileinfo.h Loading commit data...
gfileinputstream.c Loading commit data...
gfileinputstream.h Loading commit data...
gfileiostream.c Loading commit data...
gfileiostream.h Loading commit data...
gfilemonitor.c Loading commit data...
gfilemonitor.h Loading commit data...
gfilenamecompleter.c Loading commit data...
gfilenamecompleter.h Loading commit data...
gfileoutputstream.c Loading commit data...
gfileoutputstream.h Loading commit data...
gfilterinputstream.c Loading commit data...
gfilterinputstream.h Loading commit data...
gfilteroutputstream.c Loading commit data...
gfilteroutputstream.h Loading commit data...
gicon.c Loading commit data...
gicon.h Loading commit data...
ginetaddress.c Loading commit data...
ginetaddress.h Loading commit data...
ginetaddressmask.c Loading commit data...
ginetaddressmask.h Loading commit data...
ginetsocketaddress.c Loading commit data...
ginetsocketaddress.h Loading commit data...
ginitable.c Loading commit data...
ginitable.h Loading commit data...
ginputstream.c Loading commit data...
ginputstream.h Loading commit data...
gio-querymodules.c Loading commit data...
gio.h Loading commit data...
gio.rc.in Loading commit data...
gioenums.h Loading commit data...
gioenumtypes.c.template Loading commit data...
gioenumtypes.h.template Loading commit data...
gioerror.c Loading commit data...
gioerror.h Loading commit data...
giomodule-priv.h Loading commit data...
giomodule.c Loading commit data...
giomodule.h Loading commit data...
gioprivate.h Loading commit data...
gioscheduler.c Loading commit data...
gioscheduler.h Loading commit data...
giostream.c Loading commit data...
giostream.h Loading commit data...
giotypes.h Loading commit data...
giowin32-priv.h Loading commit data...
gkeyfilesettingsbackend.c Loading commit data...
glib-compile-resources.c Loading commit data...
glib-compile-schemas.c Loading commit data...
gloadableicon.c Loading commit data...
gloadableicon.h Loading commit data...
glocaldirectorymonitor.c Loading commit data...
glocaldirectorymonitor.h Loading commit data...
glocalfile.c Loading commit data...
glocalfile.h Loading commit data...
glocalfileenumerator.c Loading commit data...
glocalfileenumerator.h Loading commit data...
glocalfileinfo.c Loading commit data...
glocalfileinfo.h Loading commit data...
glocalfileinputstream.c Loading commit data...
glocalfileinputstream.h Loading commit data...
glocalfileiostream.c Loading commit data...
glocalfileiostream.h Loading commit data...
glocalfilemonitor.c Loading commit data...
glocalfilemonitor.h Loading commit data...
glocalfileoutputstream.c Loading commit data...
glocalfileoutputstream.h Loading commit data...
glocalvfs.c Loading commit data...
glocalvfs.h Loading commit data...
gmemoryinputstream.c Loading commit data...
gmemoryinputstream.h Loading commit data...
gmemoryoutputstream.c Loading commit data...
gmemoryoutputstream.h Loading commit data...
gmemorysettingsbackend.c Loading commit data...
gmenu.c Loading commit data...
gmenu.h Loading commit data...
gmenuexporter.c Loading commit data...
gmenuexporter.h Loading commit data...
gmenumodel.c Loading commit data...
gmenumodel.h Loading commit data...
gmount.c Loading commit data...
gmount.h Loading commit data...
gmountoperation.c Loading commit data...
gmountoperation.h Loading commit data...
gmountprivate.h Loading commit data...
gnativevolumemonitor.c Loading commit data...
gnativevolumemonitor.h Loading commit data...
gnetworkaddress.c Loading commit data...
gnetworkaddress.h Loading commit data...
gnetworking.c Loading commit data...
gnetworking.h.in Loading commit data...
gnetworking.h.win32 Loading commit data...
gnetworkingprivate.h Loading commit data...
gnetworkmonitor.c Loading commit data...
gnetworkmonitor.h Loading commit data...
gnetworkmonitorbase.c Loading commit data...
gnetworkmonitorbase.h Loading commit data...
gnetworkmonitornetlink.c Loading commit data...
gnetworkmonitornetlink.h Loading commit data...
gnetworkservice.c Loading commit data...
gnetworkservice.h Loading commit data...
gnextstepsettingsbackend.c Loading commit data...
gnullsettingsbackend.c Loading commit data...
goutputstream.c Loading commit data...
goutputstream.h Loading commit data...
gpermission.c Loading commit data...
gpermission.h Loading commit data...
gpollableinputstream.c Loading commit data...
gpollableinputstream.h Loading commit data...
gpollableoutputstream.c Loading commit data...
gpollableoutputstream.h Loading commit data...
gpollableutils.c Loading commit data...
gpollableutils.h Loading commit data...
gpollfilemonitor.c Loading commit data...
gpollfilemonitor.h Loading commit data...
gpropertyaction.c Loading commit data...
gpropertyaction.h Loading commit data...
gproxy.c Loading commit data...
gproxy.h Loading commit data...
gproxyaddress.c Loading commit data...
gproxyaddress.h Loading commit data...
gproxyaddressenumerator.c Loading commit data...
gproxyaddressenumerator.h Loading commit data...
gproxyresolver.c Loading commit data...
gproxyresolver.h Loading commit data...
gregistrysettingsbackend.c Loading commit data...
gregistrysettingsbackend.h Loading commit data...
gremoteactiongroup.c Loading commit data...
gremoteactiongroup.h Loading commit data...
gresolver.c Loading commit data...
gresolver.h Loading commit data...
gresource-tool.c Loading commit data...
gresource.c Loading commit data...
gresource.h Loading commit data...
gresourcefile.c Loading commit data...
gresourcefile.h Loading commit data...
gschema.dtd Loading commit data...
gseekable.c Loading commit data...
gseekable.h Loading commit data...
gsettings-mapping.c Loading commit data...
gsettings-mapping.h Loading commit data...
gsettings-tool.c Loading commit data...
gsettings.c Loading commit data...
gsettings.h Loading commit data...
gsettingsbackend.c Loading commit data...
gsettingsbackend.h Loading commit data...
gsettingsbackendinternal.h Loading commit data...
gsettingsschema-internal.h Loading commit data...
gsettingsschema.c Loading commit data...
gsettingsschema.h Loading commit data...
gsimpleaction.c Loading commit data...
gsimpleaction.h Loading commit data...
gsimpleactiongroup.c Loading commit data...
gsimpleactiongroup.h Loading commit data...
gsimpleasyncresult.c Loading commit data...
gsimpleasyncresult.h Loading commit data...
gsimplepermission.c Loading commit data...
gsimplepermission.h Loading commit data...
gsimpleproxyresolver.c Loading commit data...
gsimpleproxyresolver.h Loading commit data...
gsocket.c Loading commit data...
gsocket.h Loading commit data...
gsocketaddress.c Loading commit data...
gsocketaddress.h Loading commit data...
gsocketaddressenumerator.c Loading commit data...
gsocketaddressenumerator.h Loading commit data...
gsocketclient.c Loading commit data...
gsocketclient.h Loading commit data...
gsocketconnectable.c Loading commit data...
gsocketconnectable.h Loading commit data...
gsocketconnection.c Loading commit data...
gsocketconnection.h Loading commit data...
gsocketcontrolmessage.c Loading commit data...
gsocketcontrolmessage.h Loading commit data...
gsocketinputstream.c Loading commit data...
gsocketinputstream.h Loading commit data...
gsocketlistener.c Loading commit data...
gsocketlistener.h Loading commit data...
gsocketoutputstream.c Loading commit data...
gsocketoutputstream.h Loading commit data...
gsocketservice.c Loading commit data...
gsocketservice.h Loading commit data...
gsocks4aproxy.c Loading commit data...
gsocks4aproxy.h Loading commit data...
gsocks4proxy.c Loading commit data...
gsocks4proxy.h Loading commit data...
gsocks5proxy.c Loading commit data...
gsocks5proxy.h Loading commit data...
gsrvtarget.c Loading commit data...
gsrvtarget.h Loading commit data...
gsubprocess.c Loading commit data...
gsubprocess.h Loading commit data...
gsubprocesslauncher-private.h Loading commit data...
gsubprocesslauncher.c Loading commit data...
gsubprocesslauncher.h Loading commit data...
gtask.c Loading commit data...
gtask.h Loading commit data...
gtcpconnection.c Loading commit data...
gtcpconnection.h Loading commit data...
gtcpwrapperconnection.c Loading commit data...
gtcpwrapperconnection.h Loading commit data...
gtestdbus.c Loading commit data...
gtestdbus.h Loading commit data...
gthemedicon.c Loading commit data...
gthemedicon.h Loading commit data...
gthreadedresolver.c Loading commit data...
gthreadedresolver.h Loading commit data...
gthreadedsocketservice.c Loading commit data...
gthreadedsocketservice.h Loading commit data...
gtlsbackend.c Loading commit data...
gtlsbackend.h Loading commit data...
gtlscertificate.c Loading commit data...
gtlscertificate.h Loading commit data...
gtlsclientconnection.c Loading commit data...
gtlsclientconnection.h Loading commit data...
gtlsconnection.c Loading commit data...
gtlsconnection.h Loading commit data...
gtlsdatabase.c Loading commit data...
gtlsdatabase.h Loading commit data...
gtlsfiledatabase.c Loading commit data...
gtlsfiledatabase.h Loading commit data...
gtlsinteraction.c Loading commit data...
gtlsinteraction.h Loading commit data...
gtlspassword.c Loading commit data...
gtlspassword.h Loading commit data...
gtlsserverconnection.c Loading commit data...
gtlsserverconnection.h Loading commit data...
gunionvolumemonitor.c Loading commit data...
gunionvolumemonitor.h Loading commit data...
gunixconnection.c Loading commit data...
gunixconnection.h Loading commit data...
gunixcredentialsmessage.c Loading commit data...
gunixcredentialsmessage.h Loading commit data...
gunixfdlist.c Loading commit data...
gunixfdlist.h Loading commit data...
gunixfdmessage.c Loading commit data...
gunixfdmessage.h Loading commit data...
gunixinputstream.c Loading commit data...
gunixinputstream.h Loading commit data...
gunixmount.c Loading commit data...
gunixmount.h Loading commit data...
gunixmounts.c Loading commit data...
gunixmounts.h Loading commit data...
gunixoutputstream.c Loading commit data...
gunixoutputstream.h Loading commit data...
gunixsocketaddress.c Loading commit data...
gunixsocketaddress.h Loading commit data...
gunixvolume.c Loading commit data...
gunixvolume.h Loading commit data...
gunixvolumemonitor.c Loading commit data...
gunixvolumemonitor.h Loading commit data...
gvfs.c Loading commit data...
gvfs.h Loading commit data...
gvolume.c Loading commit data...
gvolume.h Loading commit data...
gvolumemonitor.c Loading commit data...
gvolumemonitor.h Loading commit data...
gwin32appinfo.c Loading commit data...
gwin32appinfo.h Loading commit data...
gwin32inputstream.c Loading commit data...
gwin32inputstream.h Loading commit data...
gwin32mount.c Loading commit data...
gwin32mount.h Loading commit data...
gwin32outputstream.c Loading commit data...
gwin32outputstream.h Loading commit data...
gwin32volumemonitor.c Loading commit data...
gwin32volumemonitor.h Loading commit data...
gzlibcompressor.c Loading commit data...
gzlibcompressor.h Loading commit data...
gzlibdecompressor.c Loading commit data...
gzlibdecompressor.h Loading commit data...
makefile.msc Loading commit data...
strinfo.c Loading commit data...