commit 8d68a27f7055eb80cde6d4ac67e0dce751522b05 Author: Matthias Clasen Date: Sun Jul 17 13:17:55 2016 -0400 Update NEWS | 71 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 71 insertions(+) commit 12acd90d8a9c728aac621a3103c3d84e6c98c81c Author: Philip Withnall Date: Sun Jul 17 17:10:41 2016 +0100 gmessages: Document namespacing recommendation for structured log fields We recommend that all custom log fields are namespaced to avoid collisions. https://bugzilla.gnome.org/show_bug.cgi?id=744456 glib/gmessages.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) commit 42725fb17d532a8c5903a6c849f7ca3ae01faee7 Author: Matthias Clasen Date: Sun Jul 17 02:31:37 2016 -0400 Another variadic macro fix It turns out that g_info_structured (format, ...) makes g_info_structured ("Hey!") not work, since it requires at least one argument after the format string. So shorten the argument list to just ... glib/gmessages.h | 48 ++++++++++++++++++++++++------------------------ 1 file changed, 24 insertions(+), 24 deletions(-) commit 17f48d7144cbb891355421916cad090480343734 Author: Matthias Clasen Date: Sun Jul 17 02:05:07 2016 -0400 Fix variadic macro syntax It turns out that the macros looked fine in the header, but made gcc fall over on first use. __VA_ARGS__ is only allowed in the replacement text. glib/gmessages.h | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) commit 75084c990fdfa09e919f53392ac8e3fa472d4ea2 Author: Matthias Clasen Date: Sun Jul 17 00:39:40 2016 -0400 gmessages: Suppress journald code locations This only leads to the location of our sd_journal_sendv call being embedded into every log message coming from the old API. glib/gmessages.c | 1 + 1 file changed, 1 insertion(+) commit fce7cfaf40b6e1e50c9140aa0397f5b8c8f821fb Author: Philip Withnall Date: Mon Jun 13 18:21:44 2016 +0100 gmessages: Rebase g_log() on g_log_structured() Replace the underlying write_string() call which is the ultimate result of calling g_log() with a call to g_log_structured(). This means that all g_log() calls will pass through the structured log handling code path, as long as they are not already modified or dropped by the g_log() code (fatal masks, aborts, etc.). In the case that the default structured log writer is in use, this will result in the same format of log output to stdout or stderr, as previously happened. If a non-default writer is in use, it handles the message as it sees fit. https://bugzilla.gnome.org/show_bug.cgi?id=744456 glib/gmessages.c | 85 +++++++++++++++++++------------------------------------- 1 file changed, 28 insertions(+), 57 deletions(-) commit 37ef3016846077b3d17dbb045e879865d3dc0bcd Author: Philip Withnall Date: Tue Mar 15 10:47:39 2016 +0000 gmessages: Add colour output support to structured log messages If outputting to a terminal which supports coloured output (rather than, for example, redirecting to a file). This is only enabled for structured log messages, where colour output support can be tested. It is not enabled for non-structured log messages. https://bugzilla.gnome.org/show_bug.cgi?id=744456 glib/gmessages.c | 121 +++++++++++++++++++++++++++++++++++++++++++++++-------- glib/gmessages.h | 5 ++- 2 files changed, 108 insertions(+), 18 deletions(-) commit 052eaf24f7789e6c9fd5c9432e91065d98946b7e Author: Philip Withnall Date: Sat Feb 20 12:34:29 2016 +0000 gmessages: Add a structured logging API In parallel with g_log(), add a new structured logging API, based around g_log_structured() and various helper functions which are exposed publicly to allow programs to build their own logging policies easily, without having to rewrite a lot of gmessages.c because it’s all internal. See the expanded documentation at the top of gmessages.c for some rationale. See the g_log_structured() documentation for some example code. https://bugzilla.gnome.org/show_bug.cgi?id=744456 configure.ac | 15 + glib/Makefile.am | 4 +- glib/gmessages.c | 812 ++++++++++++++++++++++++++++++++++++++++++++++++++- glib/gmessages.h | 261 +++++++++++++++++ glib/tests/logging.c | 30 ++ 5 files changed, 1118 insertions(+), 4 deletions(-) commit 8345a42cd0deec27664f1a2a815feadeb53e2556 Author: Christian Persch Date: Tue Mar 31 20:49:58 2015 +0200 Recognise common C++ extension for automatic target selection glib-compile-resources --generate is supposed to automatically detect whether to generate source code or header from the target's file extension. However, this only worked for C; extend this to include the canonical C++ filename extensions. Also make the check case insensitive. https://bugzilla.gnome.org/show_bug.cgi?id=747134 gio/glib-compile-resources.c | 33 ++++++++++++++++++++++++++++++--- 1 file changed, 30 insertions(+), 3 deletions(-) commit 0e5e3d0d65613f095a5365c827fcf1a4986b7716 Author: Lars Uebernickel Date: Tue Jun 2 07:10:31 2015 +0200 gsettings: clarify changed signal documentation Make it clear that this signal is only guaranteed to be emitted when a key has been read before. https://bugzilla.gnome.org/show_bug.cgi?id=750257 gio/gsettings.c | 3 +++ 1 file changed, 3 insertions(+) commit 9864c8abf57d3061a76d704e64897f02894f0c3f Author: Ismo Puustinen Date: Tue Aug 4 13:29:20 2015 +0300 gio: properly free memory, preventing leak and illegal access. https://bugzilla.gnome.org/show_bug.cgi?id=753231 gio/gdbusauth.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) commit 3c861237fb765f477983b19031abf0f68ea4fae4 Author: Matthias Clasen Date: Sat Jul 16 23:22:33 2016 -0400 Convince gcc to compile this code It shouldn't be that hard. gio/glocalfile.c | 3 +++ 1 file changed, 3 insertions(+) commit 21ceeed3b9dc4df638d2bc09cc0211fe719805d2 Author: Matthias Clasen Date: Wed Aug 26 11:06:31 2015 -0400 Improve error reporting Include the filename for the file in question in many of the error messages in glocalfile.c. This is useful information when diagnosing such errors, so make it easily available. http://bugzilla.gnome.org/show_bug.cgi?id=754012 gio/glocalfile.c | 217 +++++++++++++++++++++++++------------------------------ 1 file changed, 99 insertions(+), 118 deletions(-) commit b08a8dc949731d237b70614ba5b9f6ff3f080bbe Author: Chun-wei Fan Date: Mon Jul 4 12:27:42 2016 +0800 gio tool: Fix build on Windows/non-GCC The recently-added GIO tools is intended to be built on all platforms, so adjust the code a bit to enable this: -Use gssize instead of ssize_t, as ssize_t is not supported by all compilers. -Include io.h on Windows, and define STDIN_FILENO and STDOUT_FILENO if necessary on Windows. https://bugzilla.gnome.org/show_bug.cgi?id=768357 gio/gio-tool-cat.c | 14 +++++++++++++- gio/gio-tool-save.c | 15 +++++++++++++-- 2 files changed, 26 insertions(+), 3 deletions(-) commit ca037538535c49a21f32a1cef35972892222e01e Author: Ryan Lortie Date: Thu Feb 19 12:21:48 2015 -0500 g_settings_reset(): add precondition checks Ensure that @key is non-%NULL on g_settings_reset(). It turns out that using g_settings_reset() with %NULL key (although invalid as per the API documentation and not possible via bindings) accidentally produces the same effect as the _reset_all() API that we are about to add. Add the standard precondition checks to prevent that from happening. https://bugzilla.gnome.org/show_bug.cgi?id=744678 gio/gsettings.c | 3 +++ 1 file changed, 3 insertions(+) commit fdd0ed197205b7ed382ae1caf60d918dc1e4d546 Author: Xavier Claessens Date: Thu Mar 19 09:52:53 2015 -0400 Doc: Clarify when g_variant_get_fixed_array() should be used instead of _get_bytestring() https://bugzilla.gnome.org/show_bug.cgi?id=746685 glib/gvariant.c | 3 +++ 1 file changed, 3 insertions(+) commit 992ded39bf75ce08a31e4dc7085ec8d4c9daefa0 Author: Krzesimir Nowak Date: Sat Jun 4 15:01:31 2016 +0200 GVariant: Add a G_VARIANT_DICT_INIT macro The macro could be used at initialization time to avoid having an unitialized dict, especially with g_auto variables. The macro tries to be a bit more type-safe by making sure that the asv parameter is actually "GVariant *". https://bugzilla.gnome.org/show_bug.cgi?id=766370 glib/gvariant.c | 41 +++++++++++++++++++++++++++++++++-------- glib/gvariant.h | 39 ++++++++++++++++++++++++++++++++++++++- glib/tests/gvariant.c | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 117 insertions(+), 9 deletions(-) commit e1c640f81934ad3b908354ace1fda7344c368c85 Author: Krzesimir Nowak Date: Fri May 13 17:55:30 2016 +0200 GVariant: Add a G_VARIANT_BUILDER_INIT macro The macro could be used at initialization time to avoid having an unitialized builder, especially with g_auto variables. The macro tries to be a bit more type-safe by making sure that the variant_type parameter is actually "const GVariantType *". Unfortunately I have no idea how to make it possible to also pass a "const gchar *" parameter without warning. https://bugzilla.gnome.org/show_bug.cgi?id=766370 docs/reference/glib/glib-sections.txt | 1 + glib/gvariant.c | 37 +++++++++++++++++++++++++++++------ glib/gvariant.h | 34 +++++++++++++++++++++++++++++++- glib/tests/gvariant.c | 22 +++++++++++++++++++++ 4 files changed, 87 insertions(+), 7 deletions(-) commit e0e652e4032a181d4f0b0a12aeddf0678b7a3c04 Author: Matthias Clasen Date: Sun Oct 4 15:28:02 2015 -0400 Fix a corner-case in g_utf8_find_next_char In the case that *p is '\0', we should return p + 1, not p. This change allows to simplify g_utf8_find_next_char a bit. https://bugzilla.gnome.org/show_bug.cgi?id=547200 glib/gutf8.c | 18 ++++++++++-------- glib/tests/utf8-pointer.c | 8 +++++++- 2 files changed, 17 insertions(+), 9 deletions(-) commit 4215c0ce9158288619308c5fa6d2aa57ed4506b7 Author: Milan Crha Date: Fri May 27 07:30:00 2016 +0000 Fix memory leaks in GNetworkMonitorNetlink As claimed by valgrind in a downstream bug report: https://bugzilla.redhat.com/show_bug.cgi?id=1317369 https://bugzilla.gnome.org/show_bug.cgi?id=766933 gio/gnetworkmonitornetlink.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) commit e3e3ed0d7d897de0f5107593deed353c5d15caf8 Author: Olivier Crête Date: Mon Apr 14 15:48:41 2014 -0400 socketservice: Document that it starts pre-activated. https://bugzilla.gnome.org/show_bug.cgi?id=728207 gio/gsocketservice.c | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) commit 48ea710ee38c1b54e30e5df411d841c8974cce0d Author: Matthias Clasen Date: Sat Jul 16 21:07:27 2016 -0400 Do not use revents as not updated revents is set in the same function after some lines. This check was using revents from previous loop. This had the problem of causing two poll execution for every changes to poll records. Note that is not possible to move the code after revents is updated as probably poll_changed is TRUE causing the function to exit. Adapted from a patch by Frediano Ziglio, https://bugzilla.gnome.org/show_bug.cgi?id=761102 glib/gmain.c | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) commit e4ee3079c5afc3c1c3d2415f20c3e8605728f074 Author: Frediano Ziglio Date: Mon Jan 25 14:59:24 2016 +0000 Do not wake up main loop if change is from same thread This reduce the frequency the loop is waked up adding and removing file descriptors or timeouts. Considering that to support recursion events are removed from list and added again this reduce iteration number a lot. Signed-off-by: Frediano Ziglio https://bugzilla.gnome.org/show_bug.cgi?id=761102 glib/gmain.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) commit b121a7916d015a6f8d7a55b945b2ae4ea9fca9db Author: Aurélien Zanelli Date: Fri Jul 8 11:04:37 2016 +0200 gio/tests/gsettings: fix GSettings reference leaks in some tests GSettings objects were not unreffed in test_flags, test_enums and test_ranges tests and when we skip internationalization tests, ie test_l10n(_context). https://bugzilla.gnome.org/show_bug.cgi?id=768560 gio/tests/gsettings.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) commit 42dad59cc10c5b44fac23e93004b17baeb750500 Author: Kang Hu Date: Sun May 25 22:32:17 2014 +0800 gobject: add GOBJECT_IF_DEBUG macro for debugging gobjects and gsignals. historically, DEBUG_CODE(gtype.c) and IF_DEBUG(gobject.c, gsignal.c) macros are used to support debugging messages about object bookkeeping and signal emission. DEBUG_CODE has never been used in gtype.c. IF_DEBUG, when used, must be accompanied by an extra #ifdef G_ENABLE_DEBUG. this is cumbersome. this patch add a new macro GOBJECT_IF_DEBUG based on DEBUG_CODE as a replacement for both DEBUG_CODE and IF_DEBUG. https://bugzilla.gnome.org/show_bug.cgi?id=729914 gobject/gobject.c | 29 ++++++++++------------------- gobject/gtype-private.h | 18 ++++++++++++++++++ gobject/gtype.c | 9 --------- 3 files changed, 28 insertions(+), 28 deletions(-) commit ec5397f9b0fba888a2643a8a9c0238c5f1f55980 Author: Aurélien Zanelli Date: Thu Jul 7 10:23:00 2016 +0200 keyfile: return 0 when the parsed double value is invalid As specified in the g_key_file_get_double documentation. https://bugzilla.gnome.org/show_bug.cgi?id=768504 glib/gkeyfile.c | 2 ++ 1 file changed, 2 insertions(+) commit 3560faadd1f6c17973c2cf61fafe2a9c451dd71b Author: Aurélien Zanelli Date: Thu Jul 7 10:19:39 2016 +0200 glib/tests/keyfile: check return value of g_key_file_get_double is 0 for invalid values As specified in the documentation of g_key_file_get_double function. https://bugzilla.gnome.org/show_bug.cgi?id=768504 glib/tests/keyfile.c | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) commit 1e3f2ba4153b264e688721d59a4b50a9332b64a5 Author: Jonatan Pålsson Date: Thu May 26 10:12:32 2016 +0200 docs: Remove superflous XML comments in doc string for GDBusProxyTypeFunc https://bugzilla.gnome.org/show_bug.cgi?id=766899 gio/giotypes.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit b4878dec3a777f4a01c1d16ca85a6fe52b1152d6 Author: Matthias Clasen Date: Sat Jul 16 20:47:28 2016 -0400 Add a test for g_hmac_for_bytes glib/tests/hmac.c | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) commit 183ed8a3f8e663c149b2a48add3b60eff3a1a71e Author: Giovanni Campagna Date: Wed Apr 20 11:47:46 2016 -0700 Add g_compute_hmac_for_bytes() As an introspection-friendly GBytes variant of g_compute_hmac_for_data() https://bugzilla.gnome.org/show_bug.cgi?id=765338 docs/reference/glib/glib-sections.txt | 1 + glib/ghmac.c | 36 +++++++++++++++++++++++++++++++++++ glib/ghmac.h | 5 +++++ 3 files changed, 42 insertions(+) commit a9e9bc74c370bad870011b9004a712cdfa279ef2 Author: Giovanni Campagna Date: Wed Apr 20 11:30:30 2016 -0700 Fix annotations of g_compute_hmac_for_data https://bugzilla.gnome.org/show_bug.cgi?id=765338 glib/ghmac.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit ebfbae534bee10a569384c509388f2ee25ef9e92 Author: Evan Nemerson Date: Mon Jan 4 00:32:04 2016 -0800 gtestutils: add missing dash in seed argument's --help documentation https://bugzilla.gnome.org/show_bug.cgi?id=760115 glib/gtestutils.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit e7478ec9674e1065ed4db888ae263643ad83a20f Author: Stephan Bergmann Date: Thu Jul 14 15:38:32 2016 +0200 Swallow -- argument when necessary https://bugzilla.gnome.org/show_bug.cgi?id=768806 gio/gdbus-tool.c | 38 ++++++++++++++++++++++++++++++++------ 1 file changed, 32 insertions(+), 6 deletions(-) commit 0f2e4fd01c5cb07039aaf29f4f3219582c0f145c Author: Simon McVittie Date: Mon Feb 3 01:14:45 2014 +0000 Do not attempt to autolaunch a session dbus-daemon with no DISPLAY The two known use-cases for autolaunching are: * X-forwarding: "ssh -Y myhost myapp" resulting in a session bus on myhost but an X server on the original host * Legacy desktop environments on OSs without D-Bus integration: e.g. running a single GNOME or KDE app under fvwm or something, without a session dbus-daemon being started by either systemd, gnome-session, or OS integration scripts analogous to Debian's /etc/X11/Xsession.d/75dbus_dbus-launch In either case, an X11 DISPLAY is also needed. "dbus-launch --autolaunch" doesn't do anything useful when unable to connect to an X11 display; this has been the case since the feature was added in 2006, and is useful to avoid "split brain" situations in which two processes that ought to be part of the same session end up on separate session buses. Since dbus commit 407c111 in 2011, libdbus hasn't even attempted to run "dbus-launch --autolaunch" unless getenv("DISPLAY") returns non-null in the parent: this avoids doing a relatively complicated fork-and-exec that is clearly not going to lead to success. This commit gives GDBus the same policy. This change was originally made to work around a race condition in subprocess spawning (Debian bug #737380, GNOME bug #711090) but it seems valid in its own right. In my opinion as D-Bus maintainer, "dbus-launch --autolaunch" should be considered to be an X11 feature, and any future D-Bus enhancements (e.g. kdbus) or successors for X11 (e.g. Wayland, Mir) should obtain a session bus address by other means - either a session manager such as "systemd --user", gnome-session or Upstart, or a wrapper for the user session like dbus-run-session(1). Related to dbus bug . Bug: https://bugzilla.gnome.org/show_bug.cgi?id=723506 Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=737380 Signed-off-by: Simon McVittie gio/gdbusaddress.c | 7 +++++++ 1 file changed, 7 insertions(+) commit 69a2c70174b90876540f4f8d5eba8493fec5f730 Author: suhail Date: Wed Jun 22 19:19:05 2016 +0530 docs: trivial typo fixes https://bugzilla.gnome.org/show_bug.cgi?id=767949 docs/reference/gio/gdbus-codegen.xml | 2 +- docs/reference/gio/migrating-gdbus.xml | 2 +- docs/reference/glib/regex-syntax.xml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) commit a9b1f8118a0894c851fe338c4ae4fd8d0b5898e5 Author: Tiago Santos Date: Sat Jul 16 18:33:27 2016 +0000 Updated Portuguese translation po/pt.po | 1234 ++++++++++++++++++++++++++++++++++++++++++++++++-------------- 1 file changed, 969 insertions(+), 265 deletions(-) commit dbb3e551f82bf0c90e7b7f33476e27a3ed10d356 Author: Chao-Hsiung Liao Date: Sat Jul 16 02:51:15 2016 +0000 Updated Chinese (Taiwan) translation po/zh_TW.po | 1225 ++++++++++++++++++++++++++++++++++++++++++++++------------- 1 file changed, 961 insertions(+), 264 deletions(-) commit bb310d47dea7c33adabd24375537e23102659de6 Author: Yosef Or Boczko Date: Fri Jul 15 16:31:09 2016 +0300 Updated Hebrew translation po/he.po | 1201 ++++++++++++++++++++++++++++++++++++++++++++++++-------------- 1 file changed, 936 insertions(+), 265 deletions(-) commit 128f85730b6689c336ab8362187cf399c1e9952a Author: Piotr Drąg Date: Thu Jul 14 17:23:02 2016 +0200 Add Language headers to po files Future versions of gettext will fail if this header is missing. po/az.po | 2 +- po/be@latin.po | 2 +- po/ca@valencia.po | 2 +- po/dz.po | 2 +- po/en@shaw.po | 2 +- po/en_CA.po | 2 +- po/es.po | 2 +- po/fa.po | 2 +- po/gu.po | 2 +- po/ko.po | 2 +- po/mai.po | 2 +- po/mg.po | 2 +- po/ml.po | 2 +- po/ms.po | 2 +- po/nb.po | 2 +- po/nds.po | 2 +- po/sl.po | 2 +- po/sq.po | 2 +- po/sr@ije.po | 2 +- po/sr@latin.po | 2 +- po/tt.po | 2 +- po/ug.po | 2 +- po/wa.po | 2 +- po/zh_HK.po | 2 +- 24 files changed, 24 insertions(+), 24 deletions(-) commit cef799377e269be9da651200df50a8986945d7cd Author: Ting-Wei Lan Date: Mon Jan 11 13:51:32 2016 +0800 gio-querymodules: Call setlocale in main function It is required to correctly show translated messages on some locales. https://bugzilla.gnome.org/show_bug.cgi?id=760423 gio/gio-querymodules.c | 3 +++ 1 file changed, 3 insertions(+) commit 63654183a890502fe8d97f6e5d2be23589413a7a Author: Matthias Clasen Date: Wed Jul 13 12:37:11 2016 -0400 documents portal: Make sure O_PATH is defined FreeBSD doesn't have it. https://bugzilla.gnome.org/show_bug.cgi?id=768780 gio/gdocumentportal.c | 4 ++++ 1 file changed, 4 insertions(+) commit 92e31896137c18434f599edcc5bb3729b2dd4e70 Author: Nirbheek Chauhan Date: Mon Jul 11 18:17:34 2016 +0530 gmacros.h: offsetof is also available on MSVC All versions since Visual C++ 2005 have this available, so we can just use it for G_STRUCT_OFFSET. See: https://msdn.microsoft.com/en-us/library/dz4y9b9a.aspx glib/gmacros.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit b5258d9d76e267f0e36743084396820c0d994a6f Author: Chun-wei Fan Date: Mon Jul 11 21:51:37 2016 +0800 gio: Build the portal code only on *NIX xdg-desktop-portal support is only usable on *NIX platforms, so don't build them on non-*NIX platforms. Also clean up gio/Makefile.am a bit to split out the listings for the platform-specific sources from the platform-neutral sources, and assemble them for the final list of sources required for libgio. https://bugzilla.gnome.org/show_bug.cgi?id=768498 gio/Makefile.am | 53 ++++++++++++++++++++++++++++++++++++----------------- gio/gappinfo.c | 12 ++++++++++-- gio/giomodule.c | 8 ++++---- 3 files changed, 50 insertions(+), 23 deletions(-) commit bb5707d6cb3fb69abef4ed8213fa24aeb8418b0a Author: Chun-wei Fan Date: Wed Jul 13 10:41:16 2016 +0800 gio/Makefile.am: Rearrange things a bit Move the gio tool build items up, so that the MSVC items do not get split by it. gio/Makefile.am | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) commit bc7c030480ee9d9edbdacc91fd3d61a3e5092592 Author: Cosimo Cecchi Date: Tue Jul 12 15:11:12 2016 -0700 documentportal: print warnings when document portal fails to initialize Instead of siletly failing or calling a method on a NULL instance. gio/gdocumentportal.c | 36 +++++++++++++++++++++++++++++------- 1 file changed, 29 insertions(+), 7 deletions(-) commit e694d1b673f8a65bb7e2cc4f8e03997a2ed2e04c Author: Philip Withnall Date: Tue Jul 12 23:08:27 2016 +0100 gio: Fix a memory leak in gportalsupport.c Coverity CID: 1357527 gio/gportalsupport.c | 2 ++ 1 file changed, 2 insertions(+) commit e0bb25c2149e4b89f75e1a095c61e76ac4ad3a05 Author: Dan Winship Date: Mon Jul 11 17:46:41 2016 -0400 Remove an erroneous check in the non-sendmmsg() version of g_socket_send_messages() The docs specify that *all* errors are ignored if we managed to send any data successfully, not just timeout/wouldblock. https://bugzilla.gnome.org/show_bug.cgi?id=768549 gio/gsocket.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) commit 62bd8f54bbf46b0c34151d6f8b6bd1003155f4a8 Author: Cosimo Cecchi Date: Mon Jul 11 15:14:34 2016 -0700 appinfo: support opening files through document portal In addition to URIs, we now also support opening files internal to the sandboxed application through the document portal. gio/Makefile.am | 5 ++ gio/gappinfo.c | 28 ++++++- gio/gdocumentportal.c | 126 +++++++++++++++++++++++++++++++ gio/gdocumentportal.h | 31 ++++++++ gio/org.freedesktop.portal.Documents.xml | 71 +++++++++++++++++ 5 files changed, 260 insertions(+), 1 deletion(-) commit f4e2047f2010417e8323cb5bb4fa843957fdba45 Author: Cosimo Cecchi Date: Mon Jul 11 15:13:56 2016 -0700 build: don't forget to clean generated portal files gio/Makefile.am | 1 + 1 file changed, 1 insertion(+) commit 79b7efada3582ad48f00aabade402f7eacdbe224 Author: Dan Winship Date: Mon Jul 11 17:38:30 2016 -0400 Fix gio/tests/inet-address on OS X OS X apparently stringifies the IPv6 address "::80" as "::0.0.0.128", which is bizarre, but that address *is* in a "reserved for future use" range, so it's not unambiguously wrong I guess. Anyway, fix the text to use an address everyone can agree on. https://bugzilla.gnome.org/show_bug.cgi?id=768551 gio/tests/inet-address.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) commit a9172c6d03de138fb91456b86adec23bf9421467 Author: Philip Withnall Date: Mon Jul 11 21:56:04 2016 +0100 gio-tool: Fix memory leaks on error paths in mount command Various GErrors were being leaked. Coverity CID: 1357351 (amongst others) gio/gio-tool-mount.c | 9 +++++++++ 1 file changed, 9 insertions(+) commit 996bb349864e69f8c2ccecedb2409468158fe705 Author: Philip Withnall Date: Mon Jul 11 21:47:49 2016 +0100 gio-tool: Remove a stray semicolon This meant the help text would always be outputted, rendering the same mode useless and the code below it dead. Coverity CID: 1357352 gio/gio-tool-save.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit d896ad269ea29dad73589faf90eaf067ac641e54 Author: Chun-wei Fan Date: Mon Jul 11 15:16:02 2016 +0800 gio/gappinfo.c: Don't include unistd.h Functions from unistd.h seems not to be used in commit 5b77a19, and unistd.h is not universally available, so don't include it. gio/gappinfo.c | 2 -- 1 file changed, 2 deletions(-) commit bec71b5742173489e8e734d96f58bdae3645292b Author: Claude Paroz Date: Fri Jul 8 11:35:31 2016 +0000 Updated French translation po/fr.po | 1193 +++++++++++++++++++++++++++++++++++++++++++++++++------------- 1 file changed, 942 insertions(+), 251 deletions(-) commit bd3fb2a15f8bc663876f1ffba8c635a4f9de9eda Author: Matthias Clasen Date: Fri Jul 1 01:12:30 2016 -0400 Add a portal backend for GNotification This talks to the org.freedesktop.portal.Notification portal instead of directly to gnome-shell. https://bugzilla.gnome.org/show_bug.cgi?id=768498 gio/Makefile.am | 1 + gio/giomodule.c | 2 + gio/gportalnotificationbackend.c | 97 ++++++++++++++++++++++++++++++++++++++++ 3 files changed, 100 insertions(+) commit e362a014465ebc69bacc0b59817bb8d9d82017c0 Author: Matthias Clasen Date: Wed Jun 22 07:03:24 2016 -0400 Add a portalized proxy resolver implementation The backend for this lives in xdg-desktop-portal, and is in turn using GProxyResolver. https://bugzilla.gnome.org/show_bug.cgi?id=768498 gio/Makefile.am | 14 ++- gio/giomodule.c | 2 + gio/gproxyresolverportal.c | 167 +++++++++++++++++++++++++++ gio/gproxyresolverportal.h | 47 ++++++++ gio/org.freedesktop.portal.ProxyResolver.xml | 29 +++++ 5 files changed, 255 insertions(+), 4 deletions(-) commit cea5626c49d23a90ede0010d662d40c0da802b11 Author: Matthias Clasen Date: Tue Jun 21 19:55:23 2016 -0400 Add a portalized network monitor implementation The backend for this lives in xdg-desktop-portal, and is in turn using GNetworkMonitor. When network is not available in the sandbox, there is no point in reporting accurately about the network status outside the sandbox. Just return 'no connection' in this case. https://bugzilla.gnome.org/show_bug.cgi?id=768498 gio/Makefile.am | 22 +++ gio/giomodule.c | 2 + gio/gnetworkmonitorportal.c | 186 ++++++++++++++++++++++++++ gio/gnetworkmonitorportal.h | 53 ++++++++ gio/org.freedesktop.portal.NetworkMonitor.xml | 31 +++++ 5 files changed, 294 insertions(+) commit 5b77a19fe1fc89017dc3ed4f74386aa8c2a73d0e Author: Matthias Clasen Date: Tue Jun 21 08:17:16 2016 -0400 Add portal support to g_app_info_launch_default_for_uri We need to patch in the portal support at a high enough level that GAppInfo is not involved - a sandboxed app may not be able to see any applications, so it can only launch the defaults. Note that even though the API is called launch_default..., the portal may still offer the user to choose the application to launch. https://bugzilla.gnome.org/show_bug.cgi?id=768498 gio/gappinfo.c | 56 ++++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 52 insertions(+), 4 deletions(-) commit 78ef32110a4b46d05cdc3b3273583ef1aed9f75a Author: Matthias Clasen Date: Wed Jul 6 23:34:55 2016 -0400 Add portal helpers These are private helper functions that will be used in the following commits to get information about whether we are running in a flatpak sandbox, etc. We allow the use of GTK_USE_PORTAL=1 in the environment to force the use of portals. This can be useful for testing and debugging portal interaction. https://bugzilla.gnome.org/show_bug.cgi?id=768498 gio/Makefile.am | 2 ++ gio/gportalsupport.c | 84 ++++++++++++++++++++++++++++++++++++++++++++++++++++ gio/gportalsupport.h | 30 +++++++++++++++++++ 3 files changed, 116 insertions(+) commit 4586434346e6e3e76130068b1876d5d61b13b462 Author: Kalev Lember Date: Wed Jul 6 14:37:12 2016 +0200 GFileMonitor: Fix doc typos gio/gfilemonitor.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit d2c809d233341d663a782c9c11872d26946351d6 Author: Daniel Mustieles Date: Tue Jul 5 10:38:05 2016 +0000 Updated Spanish translation po/es.po | 1272 +++++++++++++++++++++++++++++++++++++++++++++++++------------- 1 file changed, 1002 insertions(+), 270 deletions(-) commit a523faba62a464c350fc539615f54045cd9d3cfd Author: Aurimas Černius Date: Sun Jul 3 18:00:19 2016 +0300 Updated Lithuanian translation po/lt.po | 1237 +++++++++++++++++++++++++++++++++++++++++++++++++------------- 1 file changed, 987 insertions(+), 250 deletions(-) commit 27fad7a6b1ff5f492def5638dd36739c967867cf Author: Matthias Clasen Date: Mon May 25 16:40:55 2015 -0400 Document the gio tool Add a man page, and integrate it in the reference docs. docs/reference/gio/Makefile.am | 18 +- docs/reference/gio/gio-docs.xml | 1 + docs/reference/gio/gio.xml | 720 ++++++++++++++++++++++++++++++++++++++++ 3 files changed, 731 insertions(+), 8 deletions(-) commit 37129297a9145eae9b7ee8b61e35cf009c032bb8 Author: Matthias Clasen Date: Mon May 25 15:24:20 2015 -0400 Add new files to POTFILES po/POTFILES.in | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) commit 9edba4e49cf84116903ca8a7c29080e7dca56607 Author: Matthias Clasen Date: Mon May 25 13:29:02 2015 -0400 Add a new gio commandline tool This command collects the various commandline utilities that are currently shipped in gvfs, and unifies them under a single, command-style binary. The tools just use GIO APIs, so it makes sense for them to live here. gio/Makefile.am | 30 ++ gio/gio-tool-cat.c | 154 +++++++ gio/gio-tool-copy.c | 218 +++++++++ gio/gio-tool-info.c | 325 ++++++++++++++ gio/gio-tool-list.c | 228 ++++++++++ gio/gio-tool-mime.c | 176 ++++++++ gio/gio-tool-mkdir.c | 108 +++++ gio/gio-tool-monitor.c | 278 ++++++++++++ gio/gio-tool-mount.c | 1174 ++++++++++++++++++++++++++++++++++++++++++++++++ gio/gio-tool-move.c | 211 +++++++++ gio/gio-tool-open.c | 97 ++++ gio/gio-tool-remove.c | 94 ++++ gio/gio-tool-rename.c | 99 ++++ gio/gio-tool-save.c | 193 ++++++++ gio/gio-tool-set.c | 195 ++++++++ gio/gio-tool-trash.c | 135 ++++++ gio/gio-tool-tree.c | 285 ++++++++++++ gio/gio-tool.c | 316 +++++++++++++ gio/gio-tool.h | 52 +++ 19 files changed, 4368 insertions(+) commit 669a0f72a1b67dc9e3262c3a5ccf29c4aed98028 Author: Matthias Clasen Date: Thu Jun 30 08:58:41 2016 -0400 Trivial: documentation wording fix There was a stray 'of' here. docs/reference/gio/overview.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit ae9e72ef612c0df3ad76b334b2483945ca495fad Author: Philip Withnall Date: Tue Mar 15 12:28:37 2016 +0000 gmessages: Simplify _g_log_abort() in gmessages.c a little https://bugzilla.gnome.org/show_bug.cgi?id=744456 glib/gmessages.c | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) commit 3613b7a3660f2a7d9609faa2d6a4649bdc5f4fe3 Author: Philip Withnall Date: Thu Jun 16 19:39:38 2016 -0400 gio: Add source tags to various GTasks constructed in GLib This makes them easier to identify when debugging and profiling. This patch was somewhat less than interesting to write. https://bugzilla.gnome.org/show_bug.cgi?id=767765 gio/gasyncinitable.c | 1 + gio/gbufferedinputstream.c | 2 ++ gio/gbufferedoutputstream.c | 2 ++ gio/gbytesicon.c | 1 + gio/gdatainputstream.c | 1 + gio/gdbusaddress.c | 1 + gio/gdbusconnection.c | 6 ++++++ gio/gdbusinterfaceskeleton.c | 1 + gio/gdbusprivate.c | 2 ++ gio/gdbusproxy.c | 3 +++ gio/gdummyproxyresolver.c | 1 + gio/gfile.c | 20 ++++++++++++++++++++ gio/gfileenumerator.c | 2 ++ gio/gfileicon.c | 1 + gio/gfileinputstream.c | 1 + gio/gfileoutputstream.c | 1 + gio/ghttpproxy.c | 1 + gio/ginputstream.c | 6 ++++++ gio/gioscheduler.c | 3 +++ gio/giostream.c | 3 +++ gio/gloadableicon.c | 1 + gio/gmemoryinputstream.c | 3 +++ gio/gmemoryoutputstream.c | 1 + gio/gnetworkaddress.c | 1 + gio/gnetworkmonitor.c | 2 ++ gio/gnetworkmonitorbase.c | 1 + gio/gnetworkservice.c | 1 + gio/goutputstream.c | 2 ++ gio/gproxyaddressenumerator.c | 1 + gio/gsimpleproxyresolver.c | 1 + gio/gsocketaddressenumerator.c | 1 + gio/gsocketclient.c | 1 + gio/gsocketconnection.c | 2 ++ gio/gsocketlistener.c | 1 + gio/gsocks4aproxy.c | 1 + gio/gsocks5proxy.c | 1 + gio/gsubprocess.c | 3 +++ gio/gtcpconnection.c | 1 + gio/gthreadedresolver.c | 6 ++++++ gio/gtlsdatabase.c | 7 +++++++ gio/gunixconnection.c | 4 ++-- gio/gunixinputstream.c | 1 + gio/gunixmount.c | 1 + gio/gunixoutputstream.c | 1 + gio/gunixvolume.c | 1 + 45 files changed, 103 insertions(+), 2 deletions(-) commit 7ea4949cdac8f7a4636f92e9e9efceec90ff09e6 Author: Philip Withnall Date: Thu Jun 16 18:28:14 2016 -0400 gmain: Add G_PID_FORMAT This will be useful for printing out GPids in printf()-style functions. https://bugzilla.gnome.org/show_bug.cgi?id=767765 configure.ac | 4 ++++ docs/reference/glib/glib-sections.txt | 1 + glib/glibconfig.h.win32.in | 1 + glib/gmain.h | 11 +++++++++++ 4 files changed, 17 insertions(+) commit 8c6d08ab1b8ec57b81d77d44820f40625009b2cc Author: Philip Withnall Date: Wed Jun 29 15:08:22 2016 +0100 build: Simplify dtrace configuration Apply the same changes as in commit 7563ab473468fecefc388ae2ed06afab8ead6211 to gio/Makefile.am. https://bugzilla.gnome.org/show_bug.cgi?id=725902 gio/Makefile.am | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) commit c4695f192c985b8da19432381edb657653178669 Author: Philip Withnall Date: Thu Jun 16 16:17:46 2016 -0400 build: Rename SystemTap scripts to include the LT version In a vague attempt at ensuring the .stp scripts can be closely associated with the .so files which they hard-code references to, rename the scripts so they include the LT version — so that they are the .so file name plus .stp. This does not fix the fact that our .stp scripts will not work on multiarch systems, as they are installed in an architecture-independent directory (/usr/share/systemtap/tapset). At the moment, it is recommended that any distribution who package the .stp files should install them in the architecture-specific subdirectories of this (for example, /usr/share/systemtap/tapset/x86-64). A better long-term solution for this is under discussion upstream: https://sourceware.org/bugzilla/show_bug.cgi?id=20264 https://bugzilla.gnome.org/show_bug.cgi?id=662802 docs/reference/glib/running.xml | 6 +++--- gio/Makefile.am | 11 +++++------ glib/Makefile.am | 9 ++++----- gobject/Makefile.am | 11 +++++------ 4 files changed, 17 insertions(+), 20 deletions(-) commit c9d661b4314316c8c622ce3230903817be9729ea Author: Philip Withnall Date: Thu Jun 16 15:46:30 2016 -0400 build: Ensure gio.stp.in is always distributed Even if systemtap is not enabled in configure when running distcheck. https://bugzilla.gnome.org/show_bug.cgi?id=662802 gio/Makefile.am | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) commit 61c1e2db99ca25569bdd9231051272ccd26daaa2 Author: Florian Müllner Date: Tue Jun 28 03:19:44 2016 +0200 vfs: Fix copying default schemes list The list of supported schemes is not known at compile-time, so it is wrong to iterate the list with G_N_ELEMENTS() and we miss all but the first scheme. Fix by checking for the %NULL sentinel instead. https://bugzilla.gnome.org/show_bug.cgi?id=768119 gio/gvfs.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) commit a42bdecf5cedfcfc376d4694e66ac7a767b8c8b1 Author: Florian Müllner Date: Tue Jun 28 01:58:13 2016 +0200 vfs: Fix return value of get_supported_uri_schemes() The function is expected to return a %NULL-terminated array, but commit 375b4ca65c dropped the sentinel when adding support for additional custom schemes. Add it back. https://bugzilla.gnome.org/show_bug.cgi?id=768119 gio/gvfs.c | 2 ++ gio/tests/vfs.c | 3 +++ 2 files changed, 5 insertions(+) commit e57355b055217b067cd1a71340f7ea47e51d4aae Author: Ondrej Holy Date: Wed Jun 22 14:03:57 2016 +0200 fileinfo: Add G_FILE_ATTRIBUTE_FILESYSTEM_REMOTE attribute Add filesystem attribute to detect remote filesystems in order to replace hardcoded filesystem types in GtkFileSystem. Set this attribute also for GLocalFile appropriately. Bump version to 2.49.3, so that early adopters of new API have a version number to target. configure.ac | 2 +- docs/reference/gio/gio-sections.txt | 1 + gio/gfileinfo.h | 9 +++++++++ gio/glocalfile.c | 5 +++++ 4 files changed, 16 insertions(+), 1 deletion(-) commit f4b5dc30a76569ce4c7e6990c4827407d52a85ef Author: Ernestas Kulik Date: Sat Jun 25 14:39:54 2016 +0300 gvfs: fix possible infinite loop in parse_name_internal() If none of the closures in the hash table return a non-null value, the loop never ends. Since the end of the hash table has been reached at that point, g_hash_table_iter_next() starts asserting. The possible fix is making the return value of g_hash_table_iter_next() the condition in the loop. https://bugzilla.gnome.org/show_bug.cgi?id=768029 gio/gvfs.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) commit 375b4ca65cf09789aeeb4e15ac3b12211729aa31 Author: Cosimo Cecchi Date: Mon Jun 20 11:42:56 2016 -0700 vfs: add g_vfs_register_uri_scheme() Add a new API to allow clients to register a custom GFile implementation handling a particular URI scheme. This can be useful for tests, but also for cases where a different URI scheme is desired to be used with another custom GFile backend. As an additional cleanup, we can use this to register the "resource" URI scheme too. Based on a patch by Jasper St. Pierre . https://bugzilla.gnome.org/show_bug.cgi?id=767887 docs/reference/gio/gio-sections.txt | 3 + gio/gvfs.c | 304 ++++++++++++++++++++++++++++++++++-- gio/gvfs.h | 36 +++++ gio/tests/vfs.c | 73 +++++++++ 4 files changed, 403 insertions(+), 13 deletions(-) commit 4442bf2c95f68bbbf3dcc8e84b1775a90eb9927a Author: Andika Triwidada Date: Fri Jun 24 10:08:01 2016 +0000 Updated Indonesian translation (cherry picked from commit 7cb5b02e6ab662e6cb384a3d68acdd81a3c15515) po/id.po | 599 +++++++++++++++++++++++++++++++++------------------------------ 1 file changed, 313 insertions(+), 286 deletions(-) commit 9bb2499c9c8be9c401d32fd7930ea0b975678db0 Author: Allison Lortie Date: Thu Jun 23 11:47:30 2016 -0400 tests: fix uint64 argument to g_object_set() call 5cea1c861def0251a10cd4de01908aaf3276c72d introduced accessors for 64bit ints to gsettings, at which point the testcases were expanded. Unfortunately, the expanded tests contained a bug: integer constants passed to g_object_set() for a 64-bit property need an up-cast. Add that now. Problem found by Iain Lane. gio/tests/gsettings.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 8e21b9e966ae0cd72bfdb9b0b8e99b2dead9e0d7 Author: Philip Withnall Date: Wed Jun 22 12:41:34 2016 +0100 build: Add gio_probes.d to sources list so it ends up in the tarball The probes.d file should be distributed even if GLib is build with dtrace disabled. This is what’s done in the glib and gobject directories. gio/Makefile.am | 1 + 1 file changed, 1 insertion(+) commit d07e166432e0b85d64347ac30a1665d69c2cb288 Author: Cosimo Cecchi Date: Mon Jun 20 10:01:01 2016 -0700 gkeyfile: add g_key_file_load_from_bytes() API This makes it easier to use GKeyFile from language bindings, and makes the API more consistent and modern with the new data type available in GLib. https://bugzilla.gnome.org/show_bug.cgi?id=767880 docs/reference/glib/glib-sections.txt | 1 + glib/gkeyfile.c | 30 ++++++++++++++++++++++++++++ glib/gkeyfile.h | 6 ++++++ glib/tests/keyfile.c | 37 +++++++++++++++++++++++++++++++++++ 4 files changed, 74 insertions(+) commit 7563ab473468fecefc388ae2ed06afab8ead6211 Author: Ryan Lortie Date: Fri Mar 7 09:35:16 2014 -0500 build: simplify dtrace configuration The ability to pass libtool via $(CC) to dtrace and have it respect this appears to be a feature that is only present in the systemtap version of the tool. In particular, FreeBSD (which seems to be using a copy of the tool from Solaris) doesn't support this. The result is that, with $(CC) ignored, and a .lo file specified in -o, we get an ELF written to the .lo. Instead of trying to have dtrace run libtool we can have libtool run dtrace. dtrace is really just a compiler that produces an object file here, and it even understands -o, so libtool can make the appropriate adjustments. There appears to be some prior art for this approach. A quick search shows that at least QEMU is using this approach. It also appears to work on Linux with systemtap's dtrace and on FreeBSD. This may regress cross-compilation because the dtrace command will have no way of knowing which compiler we intend for it to use to produce the object file. I say "may" because I don't know if dtrace ever worked in the first place under cross-compilation. https://bugzilla.gnome.org/show_bug.cgi?id=725902 glib/Makefile.am | 5 +---- gobject/Makefile.am | 4 +--- 2 files changed, 2 insertions(+), 7 deletions(-)