commit 90bb8778f2eabf00bee5bff1259c48f1e7b791b8
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Thu Jun 22 09:15:23 2017 -0400

    2.52.3

 NEWS         | 11 +++++++++++
 configure.ac |  4 ++--
 2 files changed, 13 insertions(+), 2 deletions(-)

commit 373fda6809e50703fcd85c8ece26bd710d89bfdf
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Fri Jun 2 11:42:42 2017 -0700

    appinfo: Fix the build on windows

    The previous commit forgot to protect some unix-only
    calls by an ifdef.

    Pointed out by John Emmas.

 gio/gappinfo.c | 4 ++++
 1 file changed, 4 insertions(+)

commit 098f9c6088ff7d9aad5199294f0b2fc70604eec0
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Wed May 31 12:10:25 2017 -0400

    OpenFile support: Handle open failing

    This can happen, report it as an error when it does.

 gio/gopenuriportal.c | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

commit 7cb7967cf563a57e7d2012088403ac29fad436eb
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Sat May 20 16:21:14 2017 -0400

    Use OpenFile for local files

    The OpenURI portal has a separate method to handle local
    files now. Use it.

    At the same time, split out the openuri helpers into separate
    files, and generate code for the OpenURI portal.

    https://bugzilla.gnome.org/show_bug.cgi?id=783193

 gio/Makefile.am                        |   4 +
 gio/gappinfo.c                         | 269
 +++--------------------------
 gio/gopenuriportal.c                   | 302
 +++++++++++++++++++++++++++++++++
 gio/gopenuriportal.h                   |  41 +++++
 gio/org.freedesktop.portal.OpenURI.xml | 105 ++++++++++++
 5 files changed, 476 insertions(+), 245 deletions(-)

commit 2026cb7498cb1687e2458a622d17169240914247
Author: Florian Müllner <fmuellner@gnome.org>
Date:   Mon May 29 00:38:19 2017 +0200

    gdbus-codegen: Apply --output-directory to generated docs as well

    In addition to code, gdbus-codegen can also generate docbook
    documentation for DBus interfaces. There's no good reason why
    the newly added --output-directory option shouldn't apply to
    those generated files as well.

    https://bugzilla.gnome.org/show_bug.cgi?id=783201

 gio/gdbus-2.0/codegen/codegen_docbook.py | 6 ++++--
 gio/gdbus-2.0/codegen/codegen_main.py    | 5 +++--
 2 files changed, 7 insertions(+), 4 deletions(-)

commit 169c7f1d57591e1d3de6909920025ea16caa1da6
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Sat May 6 14:22:38 2017 -0400

    Make dbus activation sandbox-aware

    When we call org.freedesktop.Application.Open to activate
    an application and pass file uris, the application may not
    be able to see the files due to a flatpak sandbox.

    Flatpak puts the flatpak app-id in the  X-Flatpak key in
    desktop files that it exports, so we can easily recognize
    applications that may be affected by this.

    In this case, call the document portal to export the files
    and pass the resulting uri's instead of the original ones.

    https://bugzilla.gnome.org/show_bug.cgi?id=783130

 gio/gdesktopappinfo.c | 43 ++++++++++++++++++++++++++++++++++++-------
 1 file changed, 36 insertions(+), 7 deletions(-)

commit 05cc4048bb20ca4bae429a692e8d4204ccd8a854
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Tue May 23 22:08:01 2017 -0400

    Add a wrapper for the AddFull document portal api

    This is a wrapper which takes a list of uris and rewrites
    them by calling AddFull with the file:// uris.

    https://bugzilla.gnome.org/show_bug.cgi?id=783130

 gio/gdocumentportal.c | 126
 +++++++++++++++++++++++++++++++++++++++++++++++++-
 gio/gdocumentportal.h |   4 ++
 2 files changed, 129 insertions(+), 1 deletion(-)

commit ba984abddc4402f5b55b5a4303f615478ca9cfd8
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Tue May 23 21:54:39 2017 -0400

    Update flatpak document portal interface

    This api has been changed upstream, recently.

    A new AddFull method has been added in this commit:
    https://github.com/flatpak/flatpak/commit/6ce8521b640c7a69f97a2fd7c96de94eb9a83125

    https://bugzilla.gnome.org/show_bug.cgi?id=783130

 gio/Makefile.am                          |   1 +
 gio/org.freedesktop.portal.Documents.xml | 161
 ++++++++++++++++++++++++++++++-
 2 files changed, 160 insertions(+), 2 deletions(-)

commit 87c928f39cd68f42907911347f48b0980320f473
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Wed Jun 14 11:48:27 2017 +0800

    Visual Studio builds: Visual Studio 2013 and later has va_copy()

    Update config.h.win32.in and glib/glibconfig.h.win32.in to indicate
    so.

 config.h.win32.in          | 4 ++--
 glib/glibconfig.h.win32.in | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

commit 3245eba169c439180cc13ed3c76f47298d723031
Author: Руслан Ижбулатов <lrn1986@gmail.com>
Date:   Fri Apr 14 07:29:05 2017 +0000

    GetTickCount64 is a __stdcall function

    https://bugzilla.gnome.org/show_bug.cgi?id=781301

 glib/gmain.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 8e517df7d42fc06a1997f66a5271d35336759b4f
Author: John Lindgren <john@jlindgren.net>
Date:   Fri Apr 14 02:09:35 2017 -0400

    NtNotifyChangeMultipleKeys is a __stdcall function.

    https://bugzilla.gnome.org/show_bug.cgi?id=781301

 gio/gwin32registrykey.c | 24 ++++++++++++------------
 1 file changed, 12 insertions(+), 12 deletions(-)

commit 958902ed9ae2f3fee7cdc038f9a25ed02ee952ec
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Wed May 24 15:43:59 2017 +0800

    Visual Studio builds: Redo utility script generation

    Use the new gen_util_scripts.py script to generate the glib-mkenums
    and
    gdbus-codegen scripts with the proper info in them so that they can be
    used properly by other build systems such as Meson, during "install".

 win32/vs10/glib-gen-srcs.props          |  4 --
 win32/vs10/glib-install.propsin         | 14 ++++++-
 win32/vs10/glib-install.vcxproj         | 22 +++++++++--
 win32/vs10/glib-install.vcxproj.filters |  4 +-
 win32/vs10/gobject.vcxproj.filtersin    |  7 +---
 win32/vs10/gobject.vcxprojin            | 18 ++-------
 win32/vs9/glib-gen-srcs.vsprops         |  4 --
 win32/vs9/glib-install.vcproj           | 68
 +++++++++++++++++++++++++++++++++
 win32/vs9/glib-install.vspropsin        | 10 ++++-
 win32/vs9/gobject.vcprojin              | 42 ++------------------
 10 files changed, 121 insertions(+), 72 deletions(-)

commit b095df45658d17af38d7b75c10d68270585e4584
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Wed May 24 12:55:37 2017 +0800

    Visual Studio builds: Add script to generate utility scripts

    This will allow the utility scripts glib-mkenums and gdbus-codegen be
    generated with the proper info in them, as build systems such as Meson
    might look for shebang lines to determine the commands that need to be
    called to invoke the scripts (which is necessary for calling these
    scripts on standard Windows cmd.exe)

 win32/Makefile.am         |  3 ++-
 win32/gen_util_scripts.py | 33 +++++++++++++++++++++++++++++++++
 2 files changed, 35 insertions(+), 1 deletion(-)

commit bae70d74825a61e7df58c10ea540f4cb1c1cf6aa
Author: Ignacio Casal Quinteiro <qignacio@amazon.com>
Date:   Thu May 11 17:51:56 2017 +0200

    Revert "GSocket: Fix race conditions on Win32 if multiple threads
    are waiting on conditions for the same socket"

    This reverts commit 799f8dcd46fb40ea206d9f1b5468db62cc00a72e.
    This patch seems to break applications that use GTask specific
    operations with GSocket. We will need to investigate a bit more
    on this issue but for now we revert it and leave it for the
    next major release.

 gio/gsocket.c | 94
 +++++++++++++++++------------------------------------------
 1 file changed, 26 insertions(+), 68 deletions(-)

commit c589084003aadb2cd17d45160a1e46a40f4a3716
Author: Philip Withnall <withnall@endlessm.com>
Date:   Mon Apr 24 21:38:59 2017 +0100

    gmain: Allow GSource methods to be called from a finalize() callback

    Temporarily increase the ref count of a GSource to 1 while calling its
    finalize() callback, so that the finalize() implementation can call
    GSource methods (like g_source_set_ready_time()) without causing
    critical warnings. It’s safe to call those methods at this point,
    as the
    source has been destroyed, but nothing has been freed.

    This is an indirect way of fixing a race between GCancellable and
    GCancellableSource, whereby the GCancellable::cancelled callback
    for the
    GCancellableSource is not disconnected until the
    GCancellableSource’s
    finalize() function is called. Previously, this meant there was
    a window
    in which the GCancellableSource’s ref count was 0, but the
    ::cancelled
    callback was still connected, and could legitimately be called as a
    result of another thread calling g_cancellable_cancel() on the
    GCancellable. The callback calls g_source_set_ready_time() on the
    GSource, and there’s no thread-safe way of checking whether
    the GSource
    has been destroyed. Instead, we have to change GSource so its
    ref count
    is only decremented to 0 inside the locked section in
    g_source_unref_internal() *after* the finalize() function has been
    called, and hence after the GCancellable::cancelled callback has been
    disconnected. The use of g_cancellable_disconnect() ensures that the
    callback disconnection is thread safe.

    Signed-off-by: Philip Withnall <withnall@endlessm.com>

    https://bugzilla.gnome.org/show_bug.cgi?id=781601

 glib/gmain.c | 4 ++++
 glib/gmain.h | 5 ++++-
 2 files changed, 8 insertions(+), 1 deletion(-)

commit 5d74233476d61771b4d67d50bec5420f551ef922
Author: Paolo Bonzini <pbonzini@redhat.com>
Date:   Tue Apr 4 09:56:47 2017 +0200

    gmain: only signal GWakeup right before or during a blocking poll

    Since commit e4ee307 ("Do not wake up main loop if change is from same
    thread", bug 761102), GMainContext uses context->owner to decide
    if the
    event loop is being run in the current thread.  However, what really
    matters is the phase in the prepare/query/poll/check/dispatch
    sequence.
    Wakeups are only needed between the end of prepare and the end
    of poll,
    and then only if prepare found that no sources were ready.

    There is no need to take threads into account, because prepare, check
    and all callers of conditional_wakeup all look at the new need_wakeup
    flag inside LOCK_CONTEXT/UNLOCK_CONTEXT.

    With this change, g_main_context_is_owner and g_main_context_wait are
    the only functions for which acquire/release matters, just like before
    commit e4ee307.

    Signed-off-by: Paolo Bonzini <bonzini@gnu.org>

 glib/gmain.c | 30 +++++++++++++++++++-----------
 1 file changed, 19 insertions(+), 11 deletions(-)

commit 21be268a308fef2535612ac8c11a956f2c055240
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Tue May 9 18:17:29 2017 -0700

    win32/replace.py: Fix replacing items in files with UTF-8 content

    Some files that this script will process might have UTF-8 items in
    there, which can cause problems on Python 3.x as it is more strict and
    careful on unicode issues.  Fix this by:

    -Doing what we did before on Python 2.x
    -Open the file with encoding='utf-8' on Python 3.x

 win32/replace.py | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

commit b8bd46bc862598db41013f4b56b0d74126e25c52
Author: Ondrej Holy <oholy@redhat.com>
Date:   Fri May 5 12:42:39 2017 +0200

    gunixmounts: Prevent unwanted automount requests

    mnt_table_is_fs_mounted causes unwanted automount requests due to
    canonicalization of source and target. It might be replaced by
    mnt_table_find_source as per the documentation in order to prevent
    the automounts, but it is redundant. All mtab entries should be
    already
    mounted and thus mnt_table_is_fs_mounted result is always true (it
    basically checks that the fs from mtab is in mtab). Let's remove
    the check at all.

    https://bugzilla.gnome.org/show_bug.cgi?id=781867

 gio/gunixmounts.c | 3 ---
 1 file changed, 3 deletions(-)