• Philip Withnall's avatar
    Consistently save errno immediately after the operation setting it · 5cddde1f
    Philip Withnall authored
    Prevent the situation where errno is set by function A, then function B
    is called (which is typically _(), but could be anything else) and it
    overwrites errno, then errno is checked by the caller.
    
    errno is a horrific API, and we need to be careful to save its value as
    soon as a function call (which might set it) returns. i.e. Follow the
    pattern:
      int errsv, ret;
      ret = some_call_which_might_set_errno ();
      errsv = errno;
    
      if (ret < 0)
        puts (strerror (errsv));
    
    This patch implements that pattern throughout GLib. There might be a few
    places in the test code which still use errno directly. They should be
    ported as necessary. It doesn’t modify all the call sites like this:
      if (some_call_which_might_set_errno () && errno == ESOMETHING)
    since the refactoring involved is probably more harmful than beneficial
    there. It does, however, refactor other call sites regardless of whether
    they were originally buggy.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=785577
    5cddde1f
Name
Last commit
Last update
..
completion Loading commit data...
fam 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...
data-to-c.py 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...
gappinfoprivate.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...
gcocoanotificationbackend.c Loading commit data...
gcontenttype-win32.c Loading commit data...
gcontenttype.c Loading commit data...
gcontenttype.h Loading commit data...
gcontenttypeprivate.h Loading commit data...
gcontextspecificgroup.c Loading commit data...
gcontextspecificgroup.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...
gdatagrambased.c Loading commit data...
gdatagrambased.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...
gdocumentportal.c Loading commit data...
gdocumentportal.h Loading commit data...
gdrive.c Loading commit data...
gdrive.h Loading commit data...
gdtlsclientconnection.c Loading commit data...
gdtlsclientconnection.h Loading commit data...
gdtlsconnection.c Loading commit data...
gdtlsconnection.h Loading commit data...
gdtlsserverconnection.c Loading commit data...
gdtlsserverconnection.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...
gfdonotificationbackend.c 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...
ggtknotificationbackend.c Loading commit data...
ghttpproxy.c Loading commit data...
ghttpproxy.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-autocleanups.h Loading commit data...
gio-querymodules.c Loading commit data...
gio-tool-cat.c Loading commit data...
gio-tool-copy.c Loading commit data...
gio-tool-info.c Loading commit data...
gio-tool-list.c Loading commit data...
gio-tool-mime.c Loading commit data...
gio-tool-mkdir.c Loading commit data...
gio-tool-monitor.c Loading commit data...
gio-tool-mount.c Loading commit data...
gio-tool-move.c Loading commit data...
gio-tool-open.c Loading commit data...
gio-tool-remove.c Loading commit data...
gio-tool-rename.c Loading commit data...
gio-tool-save.c Loading commit data...
gio-tool-set.c Loading commit data...
gio-tool-trash.c Loading commit data...
gio-tool-tree.c Loading commit data...
gio-tool.c Loading commit data...
gio-tool.h Loading commit data...
gio.h Loading commit data...
gio.rc.in Loading commit data...
gio.stp.in Loading commit data...
gio_probes.d Loading commit data...
gio_trace.h 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...
glistmodel.c Loading commit data...
glistmodel.h Loading commit data...
gliststore.c Loading commit data...
gliststore.h Loading commit data...
gloadableicon.c Loading commit data...
gloadableicon.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...
glocalfileprivate.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...
gnativesocketaddress.c Loading commit data...
gnativesocketaddress.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...
gnetworkmonitornm.c Loading commit data...
gnetworkmonitornm.h Loading commit data...
gnetworkmonitorportal.c Loading commit data...
gnetworkmonitorportal.h Loading commit data...
gnetworkservice.c Loading commit data...
gnetworkservice.h Loading commit data...
gnextstepsettingsbackend.c Loading commit data...
gnotification-private.h Loading commit data...
gnotification.c Loading commit data...
gnotification.h Loading commit data...
gnotificationbackend.c Loading commit data...
gnotificationbackend.h Loading commit data...
gnullsettingsbackend.c Loading commit data...
gopenuriportal.c Loading commit data...
gopenuriportal.h Loading commit data...
gosxappinfo.c Loading commit data...
gosxappinfo.h Loading commit data...
gosxcontenttype.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...
gportalnotificationbackend.c Loading commit data...
gportalsupport.c Loading commit data...
gportalsupport.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...
gproxyresolverportal.c Loading commit data...
gproxyresolverportal.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...
gschema.its Loading commit data...
gschema.loc 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...
gsimpleiostream.c Loading commit data...
gsimpleiostream.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...
gwin32networking.h Loading commit data...
gwin32outputstream.c Loading commit data...
gwin32outputstream.h Loading commit data...
gwin32registrykey.c Loading commit data...
gwin32registrykey.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...
meson.build Loading commit data...
org.freedesktop.portal.Documents.xml Loading commit data...
org.freedesktop.portal.NetworkMonitor.xml Loading commit data...
org.freedesktop.portal.OpenURI.xml Loading commit data...
org.freedesktop.portal.ProxyResolver.xml Loading commit data...
strinfo.c Loading commit data...
thumbnail-verify.c Loading commit data...
thumbnail-verify.h Loading commit data...