commit 7bcd03b570c8dd1e9c9f1607cd3ec29f2895f526
Author: Ryan Lortie <desrt@desrt.ca>
Date:   Tue Feb 5 18:48:37 2013 +0100

    GLib 2.35.7

 NEWS |   24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

commit 87d9b0b1fd18f7e5e543b69476e44811af809cf6
Author: Milo Casagrande <milo@ubuntu.com>
Date:   Tue Feb 5 19:22:03 2013 +0100

    [l10n] Updated Italian translation.

 po/it.po | 1304
 +++++++++++++++++++++++++++++++-------------------------------
 1 file changed, 655 insertions(+), 649 deletions(-)

commit 7788bb3a915cc0818186bb2c04a51e195579d13e
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Mon Feb 4 22:46:24 2013 -0500

    Make G_IO_FLAG_IS_WRITEABLE and enum value

    Having it as a define was causing some problems for bindings.
    https://bugzilla.gnome.org/show_bug.cgi?id=657045

 glib/giochannel.h |    4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

commit 262ebcd3fa0aff41e7e8e7e70ac1d493f41f2470
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Mon Feb 4 22:35:29 2013 -0500

    docs: Add 2 missing :

    The file attribute names go by namespace::keyname, not
    namespace:keyname.

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

 gio/gfileattribute.c |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 7f9af8071ca6b9f2ba9e1b60ae41aeeb7274e491
Author: Andoni Morales Alastruey <ylatuya@gmail.com>
Date:   Sat Nov 10 16:27:56 2012 +0100

    configure: fix check for atomic operations

    Some compilers have support for atomic operations, but do not
    define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_4. Instead of checking
    for this define, we check for __sync_bool_compare_and_swap and
    define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_4 if the compiler doesn't
    define it.

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

 configure.ac |   15 +++++++++++++--
 1 file changed, 13 insertions(+), 2 deletions(-)

commit 6b3ec827325cdca7eb2728b07eda4c6b21833b65
Author: Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
Date:   Sun Feb 3 19:52:58 2013 +0100

    Compile private test with -pthread on UNIX

    The commit f5f151cb removed this linkage, which is needed,
    at least for the toolchain gcc version 4.7.2 (Debian 4.7.2-5)

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

 glib/tests/Makefile.am |    2 ++
 1 file changed, 2 insertions(+)

commit 6bcb1c0ed6d1fc0ccade1a1b1bd2167b226ec39c
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Sun Feb 3 15:14:57 2013 -0500

    Post-release version bump

 configure.ac |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 3fe8ed04c7ae7a34af03056e73962c2beea53486
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Sun Feb 3 14:25:09 2013 -0500

    2.35.6

 NEWS         |   64
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 configure.ac |    2 +-
 2 files changed, 65 insertions(+), 1 deletion(-)

commit 844527c037717d6d086eed1cf750732032d7585c
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Sun Feb 3 14:08:02 2013 -0500

    Document GIO_USE_FILE_MONITOR

 docs/reference/gio/overview.xml |   13 +++++++++++++
 1 file changed, 13 insertions(+)

commit 435abb174d6a1c17ef9f85e7d83cf27c419ce790
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Sun Feb 3 13:50:36 2013 -0500

    Fix a doc comment mismatch

 gio/gapplicationcommandline.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit c5ec4831fa8d96de37d04dcd97abb249872b7a44
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Sun Feb 3 13:46:50 2013 -0500

    Trivial doc comment formatting fix

 docs/reference/gio/gio-sections.txt |    9 +++++++++
 gio/gmemoryinputstream.c            |    3 ++-
 2 files changed, 11 insertions(+), 1 deletion(-)

commit 9c72b5776af287447cd79bfee8c848797402755a
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Sun Feb 3 13:26:36 2013 -0500

    add 2.36 index to gobject docs

 docs/reference/gobject/gobject-docs.xml |    4 ++++
 1 file changed, 4 insertions(+)

commit 349e6018641d846cd3854d2df223e8a8cf20149b
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Sun Feb 3 13:25:56 2013 -0500

    Add 2.36 index to glib docs

 docs/reference/glib/glib-docs.xml |    4 ++++
 1 file changed, 4 insertions(+)

commit f302c655842149faa4f01af46e95693ebfcd737b
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Sun Feb 3 13:24:59 2013 -0500

    Add a 2.36 index to gio docs

 docs/reference/gio/gio-docs.xml |    4 ++++
 1 file changed, 4 insertions(+)

commit 1e4b5a3267161b69975ec5af31c30165c0c555ab
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Sun Feb 3 13:22:28 2013 -0500

    Minor doc build cleanups

 docs/reference/glib/glib-sections.txt |    2 ++
 1 file changed, 2 insertions(+)

commit 79d7a138af288e74c564b6382ac17582fc01e323
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Sun Feb 3 13:17:59 2013 -0500

    Make GUnixFDSourceFunc show up in the docs

 docs/reference/glib/glib-sections.txt |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 50850cdf98ba4e65d35a4c8e88f301b5c2551b7e
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Sun Feb 3 10:21:20 2013 -0500

    Use g_timeout_add_seconds for some long timeouts

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

 gio/tests/gdbus-tests.c |   12 ++++++------
 tests/child-test.c      |    2 +-
 2 files changed, 7 insertions(+), 7 deletions(-)

commit 1a7b4b42a89ea9736e6447a54e0d2a678356ff64
Author: Lars Uebernickel <lars.uebernickel@canonical.com>
Date:   Thu Jan 31 11:44:32 2013 +0100

    gmenumodel: add G_MENU_ATTRIBUTE_ACTION_NAMESPACE

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

 gio/gmenumodel.h |   10 ++++++++++
 1 file changed, 10 insertions(+)

commit 7fb922365bcf635f46b7989ccf08a17c7dd43f91
Author: Lars Uebernickel <lars.uebernickel@canonical.com>
Date:   Thu Jan 31 11:35:49 2013 +0100

    gmenumodel: document G_MENU_{ATTRIBUTE,LINK}_*

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

 gio/gmenumodel.h |   52
 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 52 insertions(+)

commit aeafab17c72ae19e77c2711183ace8a022e773aa
Author: Lars Uebernickel <lars.uebernickel@canonical.com>
Date:   Thu Jan 31 11:03:14 2013 +0100

    gmenuexporter: fix typo in docstring

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

 gio/gmenuexporter.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit f802f467a5bc5454f7ca5c685fe6e1f3f05a2ae5
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Sun Feb 3 09:50:48 2013 -0500

    Avoid a portability problem in the checksum test

    String literals are not guaranteed to work like this.
    https://bugzilla.gnome.org/show_bug.cgi?id=570572

 glib/tests/checksum.c |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit abbb54cdd6da757f9833d57126551ce934f4970d
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Sun Feb 3 01:28:50 2013 -0500

    Fix deprecation note for g_static_mutex_free

    It should point at g_mutex_clear, not g_mutex_free.
    https://bugzilla.gnome.org/show_bug.cgi?id=678223

 glib/deprecated/gthread-deprecated.c |    2 +-
 glib/deprecated/gthread.h            |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit d632713a7716db10eca4524e7438cbc52f0ea230
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Sun Feb 3 01:11:02 2013 -0500

    Make G_DISABLE_DEPRECATED work again for wholly deprecated headers

    Patch by Milan Crha,

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

 glib/glib.h |    2 ++
 1 file changed, 2 insertions(+)

commit 39a528b9fdf7b16c81bf5338a4b7dd4fd5318dea
Author: Dan Winship <danw@gnome.org>
Date:   Thu Aug 23 12:39:26 2012 -0400

    g_option_context_help: don't modify the input data

    If there are options that need their names to be aliased, keep track
    of that internally rather than modifying the passed-in GOptionGroup
    (and leaking strings in the process).

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

 glib/goption.c |   42 ++++++++++++++++++++++++++++++------------
 1 file changed, 30 insertions(+), 12 deletions(-)

commit ab328469f5cab5681e5564893938a48fe5c2222f
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Sat Feb 2 22:54:15 2013 -0500

    Silence automake

    automake doesn't like INCLUDES anymore.

 docs/reference/gio/Makefile.am                         |    2 +-
 .../gio/gdbus-object-manager-example/Makefile.am       |    6 +++---
 docs/reference/gobject/Makefile.am                     |    5 +++--
 gio/gdbus-2.0/codegen/Makefile.am                      |    1 -
 gio/tests/Makefile.am                                  |   16
 ++++++++--------
 gio/tests/gdbus-object-manager-example/Makefile.am     |    2 +-
 glib/gnulib/Makefile.am                                |    8 ++++++--
 glib/libcharset/Makefile.am                            |    5 +++--
 gobject/tests/Makefile.am                              |    7 ++++---
 tests/gobject/Makefile.am                              |    2 +-
 tests/refcount/Makefile.am                             |    2 +-
 11 files changed, 31 insertions(+), 25 deletions(-)

commit 0336eb67a23a434ecb08b1fcafb087b869f45239
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Sat Feb 2 16:53:45 2013 -0500

    Log errors the same way as messages

    This will make sense if we keep going past
    the assertions that cause the error to be logged.

 glib/gtestutils.c |    1 +
 1 file changed, 1 insertion(+)

commit f5f151cb85b217516ad375d085f379ec4ea97d88
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Sat Feb 2 16:26:17 2013 -0500

    Simplify glib/glib/tests setup

    The Makefile.am was setting a ton of unnecessary things

 glib/tests/Makefile.am |  346
 ++++++++++++------------------------------------
 1 file changed, 87 insertions(+), 259 deletions(-)

commit 8455702a8d55436f2ca37b801052d41cfb0ee2c9
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Sat Feb 2 16:23:03 2013 -0500

    Make the logging test more robust

    The default handler test was not unsetting the log handler that
    gets installed by GTest, which causes the log messages to be
    duplicated
    on stdout if --verbose or --tap are passed. This in turn can make some
    of the non-match checks fail. Since we are already using
    g_test_trap_fork,
    we can just unset the handler in the child.

 glib/tests/logging.c |    9 +++++++++
 1 file changed, 9 insertions(+)

commit 067d822968719e87adde7745541e8fa82cfcf9ab
Author: Piotr Drąg <piotrdrag@gmail.com>
Date:   Sun Feb 3 00:24:14 2013 +0100

    Updated Polish translation

 po/pl.po |  503
 ++++++++++++++++++++++++++++++++------------------------------
 1 file changed, 258 insertions(+), 245 deletions(-)

commit 278fe4a20f133b95694b413cc42789c3d85fdef1
Author: Yaron Shahrabani <sh.yaron@gmail.com>
Date:   Sat Feb 2 11:23:56 2013 +0200

    Updated Hebrew translation.

 po/he.po |  620
 ++++++++++++++++++++++++++++++++------------------------------
 1 file changed, 316 insertions(+), 304 deletions(-)

commit a809650a06cc91aa3f7acbe4ac3d7c4018798c2e
Author: Will Thompson <will.thompson@collabora.co.uk>
Date:   Tue Jan 29 16:09:40 2013 +0000

    Test for g_hash_table_insert() corrupting sets

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

 glib/tests/hash.c |   50
 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 50 insertions(+)

commit bb1df4d01b25e6e12ff30adcd3b07b37c4837bc0
Author: Ryan Lortie <desrt@desrt.ca>
Date:   Wed Jan 30 01:23:48 2013 +0100

    hashtable: properly handle insert() de-set-ifying

    GHashTable remains a set for as long as all of the keys are exactly
    equal (in pointer value) to all of the values.  We check this by
    comparing keys to values when we do inserts.

    Unfortunately, when doing g_hash_table_insert() when a key is
    already in
    the table, the old key pointer value is kept, but the new value
    pointer
    is used.  Now we have a situation where a key pointer is unequal to a
    value pointer, but we were not treating this case properly.

    Fix that.

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

 glib/ghash.c |   74
 ++++++++++++++++++++++++++++++++++++++++++++--------------
 1 file changed, 56 insertions(+), 18 deletions(-)

commit b1e02c7e32b40bd9e202fd4e14f046041ae0258b
Author: Руслан Ижбулатов <lrn1986@gmail.com>
Date:   Sat Jan 19 11:50:28 2013 +0400

    Fix gio tests makefile for W32

    While compiling, libtool will say that undefined symbols are not
    allowed, and
    will refuse to make you a dll. This is only one line, easy to
    miss. And it
    doesn't prevent `make' from completing successfully.

    The code this patch adds is from other Makefile.am files that use
    $(no_undefined). It's absence in gio is, most likely, an oversight.

    Fixes #692058

 gio/tests/Makefile.am |    4 ++++
 1 file changed, 4 insertions(+)

commit 59372663f2ed57b60de7cbf2a3241cf9d7adbbea
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Sat Feb 2 00:19:15 2013 -0500

    Don't try to find nfs mounts on Windows

    This should fix the build there.
    https://bugzilla.gnome.org/show_bug.cgi?id=592211

 gio/glocalfile.c |   11 +++++++++++
 1 file changed, 11 insertions(+)

commit 477490786b05c25614620a47a4b7d6632aa6e480
Author: Ryan Lortie <desrt@desrt.ca>
Date:   Fri Feb 1 04:56:23 2013 +0100

    gmain: equivocate a bit on _set_ready_time()

    Since this is a new API this cycle it's a good time to add a doc
    comment
    explicitly declaring that a confusing issue that could be resolved
    either way has no specific defined behaviour.

    This may allow us some additional freedom in future GMainContext
    work or
    we may decide that one behaviour is more desirable than the other.

 glib/gmain.c |    6 ++++++
 1 file changed, 6 insertions(+)

commit 3202978060b8352633ad484199ce51d4b81ffdc3
Author: Stef Walter <stefw@gnome.org>
Date:   Wed Jan 30 11:13:38 2013 +0100

    gdbus: Don't output invalid nested <para> docbook tags

    Fix gdbus-codegen so it no longer outputs tags like
    <para><para>Text</para></para>

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

 gio/gdbus-2.0/codegen/codegen_docbook.py |   20 +++++++++++++-------
 1 file changed, 13 insertions(+), 7 deletions(-)

commit 11e208f9d61156c1bbe4ff9f3ca3f24827246976
Author: Stef Walter <stefw@gnome.org>
Date:   Wed Jan 30 11:07:52 2013 +0100

    gdbus: Don't output invalid empty <variablelist> tags

    Docbook doesn't allow an empty <variablelist> and so the docbook
    output from gdbus-codegen is invalid when a method/signal has
    no arguments.

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

 gio/gdbus-2.0/codegen/codegen_docbook.py |   40
 ++++++++++++++++--------------
 1 file changed, 21 insertions(+), 19 deletions(-)

commit a60014f1b6fe9b62fa37b738dfc9a97d3046a1dc
Author: Dan Winship <danw@gnome.org>
Date:   Wed Dec 12 16:00:26 2012 +0100

    GInetSocketAddress: fix the byte order of flowinfo and scope_id

    The flowinfo and scope_id fields of struct sockaddr_in6 are in host
    byte order, but the code previously assumed they were in network byte
    order. Fix that.

    This is an ABI-breaking change (since before you would have had to use
    g_ntohl() and g_htonl() with them to get the correct values, and now
    that would give the wrong values), but the previous behavior was
    clearly wrong, and no one ever reported it, so it is likely that no
    one was actually using it.

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

 README.in                |    6 ++++++
 gio/ginetsocketaddress.c |    4 ++--
 gio/gsocketaddress.c     |    4 ++--
 gio/tests/socket.c       |    4 ++--
 4 files changed, 12 insertions(+), 6 deletions(-)

commit 0ea7abaed5cff685f4d825f13588979e5dcb8e5b
Author: Cosimo Cecchi <cosimoc@gnome.org>
Date:   Wed Jan 30 17:59:09 2013 +0100

    gmacros: add G_GNUC_UNUSED to G_STATIC_ASSERT

    Silence some warnings seen with GCC 4.8.

 glib/gmacros.h |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 7986d834c03490104a06e6adfa6156a52688f7c2
Author: Kjartan Maraas <kmaraas@gnome.org>
Date:   Tue Jan 29 19:36:58 2013 +0100

    Updated Norwegian bokmål translation

 po/nb.po |  324
 +++++++++++++++++++++++++++++++-------------------------------
 1 file changed, 162 insertions(+), 162 deletions(-)

commit f398bec5bcc0d924e2401c76a6b94133e9490835
Author: Colin Walters <walters@verbum.org>
Date:   Fri Jan 25 12:05:26 2013 -0500

    Add g_close(), use it

    There are two benefits to this:

    1) We can centralize any operating system specific knowledge of
       close-vs-EINTR handling.  For example, while on Linux we should
       never
       retry, if someone cared enough later about HP-UX, they could
       come by
       and change this one spot.
    2) For places that do care about the return value and want to provide
       the caller with a GError, this function makes it convenient to
       do so.

    Note that gspawn.c had an incorrect EINTR loop-retry around close().

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

 docs/reference/glib/glib-sections.txt |    1 +
 gio/gapplicationimpl-dbus.c           |    3 +-
 gio/gdbusprivate.c                    |    3 +-
 gio/gdbusserver.c                     |    4 ++-
 gio/gdesktopappinfo.c                 |    6 +++-
 gio/gfile.c                           |   15 ++++++++--
 gio/glocalfile.c                      |    7 +++--
 gio/glocalfileinfo.c                  |    3 +-
 gio/glocalfileinputstream.c           |   24 +++++++---------
 gio/glocalfileoutputstream.c          |   49
 +++++++++++++--------------------
 gio/gnetworkmonitornetlink.c          |    5 ++--
 glib/glib-unix.c                      |    1 -
 glib/gspawn.c                         |   14 +++-------
 glib/gstdio.c                         |   43
 +++++++++++++++++++++++++++++
 glib/gstdio.h                         |    4 +++
 15 files changed, 115 insertions(+), 67 deletions(-)

commit cf68300d27784ab5baaf6ef4761cead0ec404b1f
Author: Simon McVittie <simon.mcvittie@collabora.co.uk>
Date:   Sat Jan 26 17:37:33 2013 +0000

    g_atomic_int_get, g_atomic_pointer_get: accept const arguments

    Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
    Reviewed-by: Matthias Clasen <mclasen@redhat.com>
    Bug: https://bugzilla.gnome.org/show_bug.cgi?id=692583

 glib/gatomic.c      |   12 ++++++------
 glib/gatomic.h      |    4 ++--
 glib/tests/atomic.c |   11 +++++++++++
 3 files changed, 19 insertions(+), 8 deletions(-)

commit f7b31301d5cc8f3810a747fb598b3cb683dfb337
Author: Matej Urbančič <mateju@svn.gnome.org>
Date:   Sun Jan 27 22:03:12 2013 +0100

    Updated Slovenian translation

 po/sl.po |  275
 +++++++++++++++++++++++++++++++-------------------------------
 1 file changed, 137 insertions(+), 138 deletions(-)

commit 166766a89fcd173dcd6ffda11f902029928f7f28
Author: Colin Walters <walters@verbum.org>
Date:   Fri Jan 25 10:40:45 2013 -0500

    GFile: Clean up file_copy_fallback to fix SEGV with btrfs

    Ok, this function was just an awful mess before.  Now the problem
    domain is not trivial, and I won't claim this new code is *beautiful*,
    but it should fix the bug at hand, and be somewhat less prone to
    failure for the next person who tries to modify it.  There's only one
    unref call for each object now.

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

 gio/gfile.c |  140
 ++++++++++++++++++++++++++++++++---------------------------
 1 file changed, 76 insertions(+), 64 deletions(-)

commit 1818e0a2f80fc578d80b8dbc73163bf81b7d792b
Author: Aurimas Černius <aurisc4@gmail.com>
Date:   Sat Jan 26 20:24:32 2013 +0200

    Updated Lithuanian translation

 po/lt.po | 2066
 +++++++++++++++++++++++++++++++-------------------------------
 1 file changed, 1043 insertions(+), 1023 deletions(-)

commit 67694fb35e88dd4254173871ebfd5ef814a2ba59
Author: Rui Matos <tiagomatos@gmail.com>
Date:   Sat Jan 26 19:08:08 2013 +0100

    gsequence: Fix g_sequence_lookup() return value documentation

    Mention that we return NULL if the item we are looking up isn't
    found.

 glib/gsequence.c |    5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit 82f2ee90fea41238d1936fc38a404cdb268c1b89
Author: Dan Winship <danw@gnome.org>
Date:   Sat Jan 26 10:09:33 2013 -0500

    .gitignore updates

 gio/tests/.gitignore |    4 ++++
 tests/.gitignore     |    1 +
 2 files changed, 5 insertions(+)

commit 1eb5c7ceddd88bb198a01384684e52e7080921a9
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Fri Jan 25 20:09:26 2013 -0500

    Plug a small memleak in gdbus-export test

 gio/tests/gdbus-export.c |    1 +
 1 file changed, 1 insertion(+)

commit 48fd50701229de084947ea94406c1ff2c7c397f5
Author: Colin Walters <walters@verbum.org>
Date:   Fri Jan 25 12:32:39 2013 -0500

    gfile: Ensure we create internal pipe with FD_CLOEXEC

    That way the descriptors aren't leaked to child processes.

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

 gio/gfile.c |   11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

commit cbd7225e7072e6c886e7370f999299d25906a14b
Author: Colin Walters <walters@verbum.org>
Date:   Fri Jan 25 12:06:04 2013 -0500

    gwakeup: Fix uninitialized variable from previous commit

    We really don't want to infloop here...

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

commit 090f874626312e83d053a51aeb59670b2a9655d7
Author: Colin Walters <walters@verbum.org>
Date:   Wed Aug 29 11:44:01 2012 -0400

    Handle EINTR for a few more write() calls

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

 glib/gmessages.c |    5 ++++-
 glib/gwakeup.c   |   13 +++++++++++--
 2 files changed, 15 insertions(+), 3 deletions(-)

commit 2ab5ed84b2154146c75dcd3876315a4beda48752
Author: Daniel Mustieles <daniel.mustieles@gmail.com>
Date:   Fri Jan 25 12:54:09 2013 +0100

    Updated Spanish translation

 po/es.po |  257
 +++++++++++++++++++++++++++++++-------------------------------
 1 file changed, 129 insertions(+), 128 deletions(-)

commit 7261294ec163234e52f0edeb24df0b18f5e77395
Author: Akira TAGOH <akira@tagoh.org>
Date:   Thu Jan 24 12:33:39 2013 +0900

    gcontenttype: Duplicate the string inside Mutex lock for thread-safety

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

 gio/gcontenttype.c |    3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit c67a2ebda387331793563dafa57dbb19aa136b9d
Author: Gil Forcada <gforcada@gnome.org>
Date:   Fri Jan 25 00:17:18 2013 +0100

    Incorrect string formatters, fixes #692229

 glib/gfileutils.c |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit b0d5ce16782cc06712456ffa6b8a7521a70bcd1e
Author: Alexander Larsson <alexl@redhat.com>
Date:   Wed Jan 23 12:07:10 2013 +0100

    Ignore fstab entries that are bind mounts

    We don't show the bind mounts anyway, so it only leads to
    problems when we show the fstab entries, like being unable
    to mount them.

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

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

commit 455afd3545a29393aec66f5d87dde7920db9d87b
Author: Dan Winship <danw@gnome.org>
Date:   Mon Jan 21 11:25:26 2013 -0500

    build: fix a srcdir != builddir problem with gnetworking.h

    gio's glib-mkenums call needs to get gnetworking.h out of $(builddir),
    not $(srcdir). Fix/simplify it by using $(filter) on $^ and letting
    make find everything.

    Also add -Wno-portability to AM_INIT_AUTOMAKE in configure.ac, so that
    it doesn't warn about this (or about the gmake-specific features we
    were already using in gio/tests/)

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

 configure.ac    |    2 +-
 gio/Makefile.am |    6 ++----
 2 files changed, 3 insertions(+), 5 deletions(-)

commit d8874e58a78889815f004f62681cd99b5f5d36f7
Author: Colin Walters <walters@verbum.org>
Date:   Wed Jan 23 11:51:48 2013 -0500

    gtester: Use FD_CLOEXEC when creating pipes

    We were already unsetting the cloexec flag for the child later,
    just not actually starting with it.

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

 glib/gtester.c |    8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

commit 5932e16acda9434cd4e9d76cf6faba4b8217357f
Author: Dan Winship <danw@gnome.org>
Date:   Tue Jan 22 16:39:49 2013 -0500

    GNetworkMonitorNetlink: make the netlink socket cloexec

    Use the same code GSocket does, to try SOCK_CLOEXEC first, and then
    fall back to FD_CLOEXEC if it fails. (And fix that code to not call
    fcntl if SOCK_CLOEXEC worked.)

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

 gio/gnetworkingprivate.h     |    5 +++
 gio/gnetworkmonitornetlink.c |    2 +-
 gio/gsocket.c                |   86
 +++++++++++++++++++++++++-----------------
 3 files changed, 57 insertions(+), 36 deletions(-)

commit 2476dd24d7c30dbc04a37fbac6a2fa7e2551ede9
Author: Shankar Prasad <svenkate@redhat.com>
Date:   Wed Jan 23 12:59:13 2013 +0530

    Updated kn translations

 po/kn.po |  689
 ++++++++++++++++++++++++++++++++------------------------------
 1 file changed, 351 insertions(+), 338 deletions(-)

commit bfc9536617721535eb0403496d9983542f2175e4
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Tue Jan 22 14:14:27 2013 +0800

    build/Makefile-newvs.am: Make description comment clearer

 build/Makefile-newvs.am |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit e908b50371a5052d7a9690b3409ae028d46540b4
Author: Cosimo Cecchi <cosimoc@gnome.org>
Date:   Sun Jan 20 14:00:50 2013 -0500

    gfile: don't report completion twice on g_file_load_contents error

    When an error occurs while reading the file input stream in
    g_file_load_contents (e.g. because the operation was cancelled), the
    code is correctly calling g_task_return_error(), but in the callback
    from the close operation, g_task_return_boolean() will be called
    again.

    Code that cleans up its state in the async callback will then
    be called
    twice, leading to invalid memory access.

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

 gio/gfile.c |    9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

commit 40f8e15c1b07f46d36b16cf8bcf9fce7f1a73c54
Author: Cosimo Cecchi <cosimoc@gnome.org>
Date:   Sun Jan 20 13:12:49 2013 -0500

    inotify: fix a memleak

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

 gio/inotify/inotify-path.c |    1 +
 1 file changed, 1 insertion(+)

commit 09342300074f8cff5b91bb777d99f63bcda2666c
Author: Kjartan Maraas <kmaraas@gnome.org>
Date:   Mon Jan 21 12:25:16 2013 +0100

    Updated Norwegian bokmål translation

 po/nb.po |  264
 ++++++++++++++++++++++++++++++++------------------------------
 1 file changed, 138 insertions(+), 126 deletions(-)

commit 1ce415b45bde895c31dd32e2f7ab7e7ab79e735e
Author: Giovanni Campagna <gcampagna@src.gnome.org>
Date:   Thu Jan 3 22:53:06 2013 +0100

    Install an invalidation notifier for GClosure in
    g_source_set_closure()

    The point of g_source_set_closure() is getting memory management
    right,
    including handling closures disappearing from the outside (for example
    because a runtime they refer to is being shutdown). This means that
    sources with an associated closure should remove themselves from the
    main loop and free memory when the closure is invalidated.

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

 gobject/gsourceclosure.c |    9 +++++++++
 1 file changed, 9 insertions(+)

commit e68402e330b977fb6324af6eca7ccf612b0e8b9c
Author: Gheyret Kenji <gheyret@gmail.com>
Date:   Sun Jan 20 19:47:16 2013 +0900

    Updated Uyghur translation

    Signed-off-by: Gheyret Kenji <gheyret@gmail.com>

 po/ug.po | 2377
 +++++++++++++++++++++++++++++++++-----------------------------
 1 file changed, 1275 insertions(+), 1102 deletions(-)

commit 287849a1ee1f927e055f6daa5d298ba568529fb2
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Sun Jan 20 03:16:47 2013 -0500

    Fix a typo

 glib/tests/Makefile.am |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 89aa9dbd9871d6f6cffc25ae8cb02e3b764a25b6
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Sun Jan 20 03:14:24 2013 -0500

    Fix g_test_add_vtable

    This function was creating a test suite for each added
    testcase, when it should have grouped tests according to
    their paths.

 glib/gtestutils.c |   23 +++++++++++++++++++++--
 1 file changed, 21 insertions(+), 2 deletions(-)

commit 1cd0cf37974f8bae221bf9b988376066c683f69e
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Sun Jan 20 03:12:09 2013 -0500

    Fix annotation for g_test_fail

    The doc comment has a "Since: 2.30" annotation, so make
    the header match that.

 glib/gtestutils.h |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 9e9d028b96b3e19902a40b930418a0ec3e30ccfc
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Sat Jan 19 14:30:05 2013 -0500

    Fix build with -Werror=format

    There were a few places in gmarkup.c where we were giving
    pointer differences when integers are expected. Fix that
    by explicitly casting to int.

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

 glib/gmarkup.c |    6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 6af88940032ab12179af5a9531915344e3e3db98
Author: Ryan Lortie <desrt@desrt.ca>
Date:   Fri Jan 18 18:48:31 2013 -0500

    fam: implement gio-nfs-{file,directory}-monitor

    Declare explicit support for monitor NFS from the fam file monitoring
    backend.  This will cause it to be preferred for monitoring on NFS, if
    it is installed.

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

 gio/fam/fam-module.c           |    2 ++
 gio/fam/gfamdirectorymonitor.c |    4 ++++
 gio/fam/gfamfilemonitor.c      |    4 ++++
 3 files changed, 10 insertions(+)

commit 6be54e9f56e9344ecd55a8952dff957573a136b7
Author: Ryan Lortie <desrt@desrt.ca>
Date:   Fri Jan 18 18:44:11 2013 -0500

    localfile: add support for monitoring on NFS

    Add a pair of new extension points: 'gio-nfs-file-monitor' and
    'gio-nfs-directory-monitor'.

    Add a check to GLocalFile when creating a file monitor.  If the
    requested file is in the user's home directory and the user has an NFS
    home directory then attempt to use an implementation of one of the new
    extension points.  If we don't have any implementations then fall back
    to the normal "local" monitors.

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

 gio/giomodule.c              |    6 ++++
 gio/glocaldirectorymonitor.c |   15 ++++++---
 gio/glocaldirectorymonitor.h |    2 ++
 gio/glocalfile.c             |   73
 ++++++++++++++++++++++++++++++++++++++++--
 gio/glocalfilemonitor.c      |   19 +++++++----
 gio/glocalfilemonitor.h      |    2 ++
 6 files changed, 105 insertions(+), 12 deletions(-)

commit c83600e8ae419df7c30b16d267d71d706a29936f
Author: Ryan Lortie <desrt@desrt.ca>
Date:   Fri Jan 18 18:30:36 2013 -0500

    file monitors: use new giomodule function

    Get rid of the complicated default module detection code in
    GLocalFileMonitor and GLocalDirectoryMonitor and use the new
    _gio_module_get_default_type() function instead.

    This change also adds the ability to override the default file monitor
    via the GIO_USE_FILE_MONITOR environment variable in the same way
    as can
    be done for GIO_USE_VFS.

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

 gio/glocaldirectorymonitor.c |   60
 +++---------------------------------------
 gio/glocalfilemonitor.c      |   60
 +++---------------------------------------
 2 files changed, 8 insertions(+), 112 deletions(-)

commit 3a7b44c007c2d80d9adfa883eca82124ec39deee
Author: Ryan Lortie <desrt@desrt.ca>
Date:   Fri Jan 18 18:27:57 2013 -0500

    giomodule: add a new "get default" function

    _gio_module_get_default() is a very convenient function for modules
    implementing a singleton -- it finds the default module by priority
    subject to override by a given environment variable name, instantiates
    it, and caches the instance for future calls.  It also has the ability
    to query instances for being 'active' using a callback.

    It doesn't work very well for non-singletons (like file monitors).

    Add a new function _gio_module_get_default_type() that skips the
    instantiation, returning the GType instead.  As a replacement for the
    'active' callback, a vtable offset can be given for a virtual function
    to use to query if a particular backend is supported.

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

 gio/giomodule-priv.h |    4 ++
 gio/giomodule.c      |  120
 +++++++++++++++++++++++++++++++++++++++++++++++++-
 2 files changed, 122 insertions(+), 2 deletions(-)

commit ca58dae277896d9e431b54069e5f28cf1bd49d2a
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Sat Jan 19 12:05:12 2013 +0800

    Update Visual C++ 2010 property sheet

    Left out some items to purge in the last commit.  Sorry :|

 build/win32/vs10/glib.props |   18 ------------------
 1 file changed, 18 deletions(-)

commit 6c7539fe592849f5639eebd277763319f6fc9cb8
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Sat Jan 19 12:02:45 2013 +0800

    Clean up Visual C++ property sheets

    We no longer need entries to generate the .def files in the property
    sheets
    as we are now doing __declspec (dllexport) to export all the needed
    symbols.  So, purge these items from the property sheets since they
    are no
    longer used.

 build/win32/vs10/glib.props  |    7 -------
 build/win32/vs9/glib.vsprops |   24 ------------------------
 2 files changed, 31 deletions(-)

commit bdb7c2d956a95ca6a66812c1218dc085f8f2f8fe
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Sat Jan 19 11:58:47 2013 +0800

    Bug 688681: Stop using the .def file for GThread Visual C++ builds

    We should also stop using gthread/gthread.def file as well, since we
    also use __declspec (dllexport) for the two (deprecated) functions
    there
    since commit f8756694.

    This should also silence some linker warnings in x64 builds.

    Also get rid of the references to the .symbols files in the
    .vcxproj.filters(in) in the various Visual C++ 2010 projects

 build/win32/vs10/gio.vcxproj.filtersin     |    5 -----
 build/win32/vs10/glib.vcxproj.filtersin    |    5 -----
 build/win32/vs10/gmodule.vcxproj.filters   |    5 -----
 build/win32/vs10/gobject.vcxproj.filtersin |    5 -----
 build/win32/vs10/gthread.vcxproj           |    7 -------
 build/win32/vs10/gthread.vcxproj.filters   |    5 -----
 build/win32/vs9/gthread.vcproj             |   18 ++----------------
 7 files changed, 2 insertions(+), 48 deletions(-)

commit 13966e0fadc40a6fabb0de216e8b2c3b6d457a79
Author: Cosimo Cecchi <cosimoc@gnome.org>
Date:   Fri Jan 18 17:22:52 2013 -0500

    timezone: plug a memleak

 glib/gtimezone.c |   10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

commit f24594122c3e3c66702ff537d3468ed251838007
Author: Cosimo Cecchi <cosimoc@gnome.org>
Date:   Fri Jan 18 17:02:35 2013 -0500

    timezone: avoid a double GBytes unref

    This will cause random memory corruption; functions should not unref
    passed-in parameters.

 glib/gtimezone.c |    1 -
 1 file changed, 1 deletion(-)

commit 4d3bb3caf7a1076960e148216e4f6d20eedd5ad1
Author: Мирослав Николић <miroslavnikolic@rocketmail.com>
Date:   Fri Jan 18 23:01:19 2013 +0100

    Updated Serbian translation

 po/sr.po       | 1120
 ++++++++++++++++++++++++++++----------------------------
 po/sr@latin.po | 1120
 ++++++++++++++++++++++++++++----------------------------
 2 files changed, 1120 insertions(+), 1120 deletions(-)

commit 998c6e65cf18aee626b9982347c29b4b09f2c097
Author: Ryan Lortie <desrt@desrt.ca>
Date:   Fri Jan 18 16:11:20 2013 -0500

    GVariant: fix normal-form checking for tuples

    GVariant has the concept of fixed-sized types (ie: types for which all
    values of the type will have the same size).  Examples are booleans,
    integers, doubles, etc.  Tuples containing only these types are also
    fixed size.

    When GVariant is trying to deal with a fixed-sized value for which it
    doesn't have a sufficient backing store (eg: the case where a
    fixed-sized value was created with g_variant_new_data() with an
    incorrect number of bytes) it denotes this by setting the size of the
    value to the correct fixed size but using a NULL data pointer.

    This is well-documented in several code comments and also in the
    public
    API documentation for g_variant_get_data() which describes the
    situation
    number which NULL could be returned.

    The decision to deal with this case in this way was changed at
    the last
    minute around the time that GVariant was merged -- originally we
    had an
    elaborate setup involving allocating an internal buffer of sufficient
    size to be shared between all invalid values.

    Unfortunately, when making this change a small detail was missed.
    gvs_tuple_get_child() (the function responsible for deserialising
    tuples) was updated to properly check for this case (and it contains a
    comment about why it must).  gvs_tuple_is_normal() (the function
    responsible for verifying if a tuple is in normal form) was not.

    We add the check now.

    Note that this problem does not exist with any other container type
    because tuples are the only container capable of being fixed-sized.
    All
    other container types (arrays, maybes, variants) can contain
    a variable
    number of items or items of variable types (note: we consider
    dictionary
    entries to be two-tuples).  The code for validating non-container
    values
    also contains a check for the case of NULL data.

    The problem also does not occur in the only other function dealing
    with
    serialised tuples: gvs_tuple_n_children().  Whereas other container
    types would have to inspect the serialised data to determine the
    number
    of children, for tuples it can be determined directly from the type.

 glib/gvariant-serialiser.c |    4 ++++
 1 file changed, 4 insertions(+)

commit 00ee6de4e29f7f8c5338f1f9083717d5ec1d9246
Author: Ryan Lortie <desrt@desrt.ca>
Date:   Fri Jan 18 14:33:16 2013 -0500

    gobject/: Remove abicheck.sh from DIST_EXTRA

 gobject/Makefile.am |    3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit 614f6c5e7073737cf1f531120287688859f88bd7
Author: Ryan Lortie <desrt@desrt.ca>
Date:   Fri Jan 18 13:56:10 2013 -0500

    Add new API checking utility

    Add a test script to make sure that (with a few exceptions) only
    symbols
    that start with 'g_' are being exported from our public libraries.

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

 Makefile.am   |    7 ++++++-
 check-abis.sh |   23 +++++++++++++++++++++++
 2 files changed, 29 insertions(+), 1 deletion(-)

commit 52a81a7d86102604729ba07824f1ae6a45b51cea
Author: Ryan Lortie <desrt@desrt.ca>
Date:   Fri Jan 18 13:27:16 2013 -0500

    Remove a few more G_GNUC_INTERNAL users

 gio/fen/fen-kernel.c         |    2 +-
 gio/inotify/inotify-helper.c |    2 +-
 glib/gconvert.c              |    2 +-
 glib/gutils.c                |    2 +-
 glib/gwakeup.h               |   12 ++++++------
 5 files changed, 10 insertions(+), 10 deletions(-)

commit 346aa683de6b84da4bb53a63693ec04858cbf952
Author: Ryan Lortie <desrt@desrt.ca>
Date:   Fri Jan 18 13:23:40 2013 -0500

    Fix visibility for glib/ and gio/ submodules

    We have various sub directories in glib/ and gio/ (eg: inotify,
    gnulib,
    pcre, xdgmime, etc.) that build convenience libraries that are then
    included into libglib and libgio.  The files in these directories need
    to be built with the same visibility policy as the files in the first
    level directories, so add CFLAGS for them all.

    This wasn't a problem when the visibility flags were set directly in
    CFLAGS but then we had to deal with some modules that we built that we
    explicitly wanted to export symbols from.

    For now, we can keep things the way they are because it's less
    hacky and
    although it's a theoretical hazard to forget these CFLAGS, we
    rarely add
    new subdirectories to the build.

 gio/fen/Makefile.am         |    1 +
 gio/inotify/Makefile.am     |    1 +
 gio/kqueue/Makefile.am      |    1 +
 gio/win32/Makefile.am       |    1 +
 gio/xdgmime/Makefile.am     |    1 +
 glib/gnulib/Makefile.am     |    1 +
 glib/libcharset/Makefile.am |    1 +
 glib/pcre/Makefile.am       |    1 +
 8 files changed, 8 insertions(+)

commit 6f8f1f7097cbef698b4c7be5816bc9d3864ec744
Author: Colin Walters <walters@verbum.org>
Date:   Wed Nov 28 12:00:40 2012 -0500

    Remove most use of G_GNUC_INTERNAL

    Now that we use an explicit list of symbols to export, the
    G_GNUC_INTERNAL is redundant.

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

 gio/gapplicationimpl.h         |    8 --------
 gio/gdbusactiongroup.c         |    2 +-
 gio/gdelayedsettingsbackend.h  |    5 -----
 gio/gregistrysettingsbackend.h |    1 -
 gio/gsettings-mapping.h        |    3 ---
 gio/gsettingsbackendinternal.h |   15 ---------------
 gio/gsettingsschema-internal.h |   15 ---------------
 glib/gcharset.c                |    2 +-
 glib/gcharsetprivate.h         |    3 +--
 glib/gconvert.c                |    2 +-
 glib/glib-init.h               |   12 ++++++------
 glib/glib-private.h            |    3 ---
 glib/gmain.c                   |    2 +-
 glib/gmessages.h               |    2 +-
 glib/gthread-win32.c           |    4 ++--
 glib/gthreadprivate.h          |    7 -------
 glib/gunicodeprivate.h         |    5 ++---
 glib/gvariant-core.h           |    3 ---
 18 files changed, 16 insertions(+), 78 deletions(-)

commit dbf447292d83b54be321c33025aea2e4d448d4f5
Author: Ryan Lortie <desrt@desrt.ca>
Date:   Sun Jan 13 23:31:45 2013 -0500

    Remove ABI checking scripts

    Before this commit, the only difference between the expected and
    actual
    ABI were the addition of _init and _fini symbols in each module (now
    that regexp-based export control is not catching those).

 gio/Makefile.am         |    8 -
 gio/abicheck.sh         |   13 -
 gio/gio.symbols         | 1808
 -----------------------------------------------
 glib/Makefile.am        |    9 -
 glib/abicheck.sh        |   13 -
 glib/glib.symbols       | 1694
 --------------------------------------------
 gmodule/Makefile.am     |    1 -
 gmodule/gmodule.symbols |   14 -
 gobject/Makefile.am     |    9 +-
 gobject/abicheck.sh     |   13 -
 gobject/gobject.symbols |  426 -----------
 11 files changed, 1 insertion(+), 4007 deletions(-)

commit 304950a7ac9866dca990dcabb02ec5297c735ce8
Author: Ryan Lortie <desrt@desrt.ca>
Date:   Sun Jan 13 23:12:23 2013 -0500

    Remove regexp-based export control

 configure.ac        |   10 ----------
 gio/Makefile.am     |    4 +---
 glib/Makefile.am    |    4 +---
 gmodule/Makefile.am |    2 +-
 gobject/Makefile.am |    5 +----
 5 files changed, 4 insertions(+), 21 deletions(-)

commit d89fb7bf10bc1f9de10a275625d4c18a1d4ff89d
Author: Ryan Lortie <desrt@desrt.ca>
Date:   Wed Jan 16 22:55:27 2013 -0500

    gsignal: fix closure invalidation code

    This is the bug that has been causing segfaults and criticals
    when accel
    keys are used to close windows via GtkUIManager.

    The main cause of this problem was a mistake made in the original
    patch
    when modifying the handler_lookup() to take the extra 'closure'
    parameter.  The original check used was:

        if (handler->sequential_number == handler_id ||
           (closure && handler->closure == closure))

    It was called to find a particular closure like so:

        handler_lookup (instance, 0, closure, &signal_id);

    The problem is that the check will return if either the signal ID or
    closure matches (if a closure was given).  The calling code assumes
    0 to
    be an invalid signal ID which will match no handlers, but
    unfortunately
    the rest of gsignal code uses this to denote a signal that has already
    been disconnected.  The result is that this function was searching
    for a
    matching closure _or_ the first already-disconnected handler.  When it
    found the already-disconnected handler, we'd get criticals and
    crashes.

    The condition has been corrected; it now ignores the handler_id
    parameter if the closure parameter is non-NULL.

    While we're in here, change the lifecycle of the invalidation
    notify to
    be easier to understand.

    Before, the notify was removed when the last reference on the handler
    dropped.  This could happen in very many situations; often at the
    end of
    an emission.  Instead, we now tie the registration of the notifier to
    the lifecycle of the signal connection.  When the signal is
    disconnected
    we remove the notification, even if other references are held (eg:
    because it is currently being dispatched).

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

 gobject/gsignal.c |   11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

commit 578b657f950e66376f31f8c09151c85d39e8219c
Author: Dan Winship <danw@gnome.org>
Date:   Wed Jan 16 10:09:10 2013 -0500

    gio/tests: add some more async stream tests

    Add read_async() and skip_async() tests to buffered-input-stream.

    Fix and re-enable filter-streams's existing close_async() tests, and
    add read_async(), skip_async(), and write_async() tests as well. Also,
    redo the tests to use dummy GFilterInputStream and GFilterOutputStream
    subclasses rather than GBufferedInput/OutputStream, so that we're
    testing the base filter stream implementations of everything (since
    the buffered stream overrides are already getting tested in the
    buffered-input-stream and buffered-output-stream tests anyway).

    Add a skip_async() test to unix-streams. (This one would crash without
    the bugfix in the previous commit.)

 gio/tests/buffered-input-stream.c |  164 ++++++++++++++++++++++++++++++++
 gio/tests/filter-streams.c        |  188
 +++++++++++++++++++++++++++++++------
 gio/tests/unix-streams.c          |   90 ++++++++++++++----
 3 files changed, 394 insertions(+), 48 deletions(-)

commit acfa6e233780a79664a62e5d4f1bf822b446017e
Author: Alban Browaeys <prahal@yahoo.com>
Date:   Wed Jan 16 00:04:58 2013 +0100

    gio: callback_data is the task not the task data.

    skip_callback_wrapper expect the user_data (callback_data)
    to be the task holding the task_data, not the task_data
    itself.
    Otherwise the task_data is cast as GTask and then task_data
    is extracted from this bogus task.

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

 gio/ginputstream.c |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit e1517ca82da834dccf8a862bd84cdd17e36e1124
Author: Ryan Lortie <desrt@desrt.ca>
Date:   Tue Jan 15 15:40:14 2013 -0500

    mainloop test: fix a silly memory error

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

commit 46b15bb58148d84b3681d1a728ca0e6e96d65122
Author: Ryan Lortie <desrt@desrt.ca>
Date:   Tue Jan 15 15:40:09 2013 -0500

    mainloop test: use atomic for cross-thread access

 glib/tests/mainloop.c |   10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

commit 42c2c4f67da404330960ca307393ad71e68c167d
Author: Ryan Lortie <desrt@desrt.ca>
Date:   Tue Jan 15 15:22:35 2013 -0500

    mainloop test: fix a small typo

    This g_assert() could never possibly fail, as it was.

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

commit 83e5d169d6f0fd3d0427bc3599df8e777b275d9f
Author: Ryan Lortie <desrt@desrt.ca>
Date:   Mon Jan 14 23:05:31 2013 -0500

    tests for the new MainContext/GSource API

 glib/tests/mainloop.c |  492
 +++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 492 insertions(+)

commit 6d1a6636090b498d43354d5503ac39fb10ac908c
Author: Ryan Lortie <desrt@desrt.ca>
Date:   Mon Jan 14 14:47:16 2013 -0500

    Add a UNIX fd source

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

 docs/reference/glib/glib-sections.txt |   10 ++-
 glib/glib-unix.c                      |  139
 +++++++++++++++++++++++++++++++++
 glib/glib-unix.h                      |   33 ++++++++
 glib/glib.symbols                     |    3 +
 4 files changed, 184 insertions(+), 1 deletion(-)

commit cbf68cb22d9f17721654283e97c2320025f03bc7
Author: Ryan Lortie <desrt@desrt.ca>
Date:   Mon Jan 14 16:53:06 2013 -0500

    gsource: Add support for file descriptors on UNIX

    Adding file descriptors to a GSource provides similar functionality to
    the old g_source_add_poll() API with two main differences.

    First: the list of handles is managed internally and therefore
    users are
    prevented from randomly modifying the ->events field.  This prepares
    us
    for an epoll future where changing the event mask is a syscall.

    Second: keeping the list internally allows us to check the ->revents
    for
    events for ourselves, allowing the source to skip implementing
    check/prepare.  This also prepares us for the future by allowing an
    implementation that doesn't need to iterate over all of the sources
    every time.

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

 docs/reference/glib/glib-sections.txt |    4 +
 glib/glib.symbols                     |    4 +
 glib/gmain.c                          |  225
 ++++++++++++++++++++++++++++++++-
 glib/gmain.h                          |   17 +++
 4 files changed, 246 insertions(+), 4 deletions(-)

commit db7d5306cce36ace71e6f7765a7669fc335747e8
Author: Ryan Lortie <desrt@desrt.ca>
Date:   Tue Aug 30 19:14:17 2011 -0400

    GTimeoutSource: simplify

    Take advantage of the new default handling of the 'prepare' and
    'check'
    functions.

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

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

commit 768574635dcb69e91a2b749467ef3c75ed16579f
Author: Ryan Lortie <desrt@desrt.ca>
Date:   Mon Jan 14 16:51:51 2013 -0500

    GSource: new API g_source_set_ready_time()

    Add an API to mark a GSource to automatically become ready at the
    specified monotonic time.

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

 docs/reference/glib/glib-sections.txt |    2 +
 glib/glib.symbols                     |    2 +
 glib/gmain.c                          |  109
 +++++++++++++++++++++++++++++++++
 glib/gmain.h                          |    9 ++-
 4 files changed, 121 insertions(+), 1 deletion(-)

commit 6d25e349988d4c40b066d548383fce3b126a7a43
Author: Ryan Lortie <desrt@desrt.ca>
Date:   Mon Oct 29 18:26:05 2012 +0100

    gsource: allow NULL check and prepare functions

    Allow for NULL GSourceFuncs.check() and .prepare().

    For prepare() the source will be taken not to be ready and having an
    infinite timeout.  For check() the source will be taken not to
    be ready.

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

 glib/gmain.c |   54
 ++++++++++++++++++++++++++++++++++--------------------
 glib/gmain.h |    8 ++++++--
 2 files changed, 40 insertions(+), 22 deletions(-)

commit 8f7f7f6c4209900ca1a77c7e2015ff3e9c252097
Author: Ryan Lortie <desrt@desrt.ca>
Date:   Mon Oct 29 16:33:18 2012 +0100

    move GIOCondition to gmain.h from giochannel.h

    GIOCondition has uses outside of GIOChannel, so move it to gmain.h.

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

 glib/giochannel.h |   10 ----------
 glib/gmain.h      |   11 +++++++++++
 2 files changed, 11 insertions(+), 10 deletions(-)

commit ed8ec635eb37099d36581b4b66dd24148940ebfa
Author: Ryan Lortie <desrt@desrt.ca>
Date:   Mon Oct 29 16:31:46 2012 +0100

    gsource: Make GSource->source_funcs const

    This is the vtable pointer for the source which is usually held in
    static storage.  For our internal sources it points at a vtable which
    the user should really never be modifying.

    Mark it const.

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

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

commit e1bee17e947b98f72d3764081333f339099b086a
Author: Yuri Sedunov <aris@altlinux.ru>
Date:   Tue Jan 15 11:05:43 2013 -0500

    gtester: Add #include config.h

    Missed #include "config.h" so, in particular, large file support
    (_FILE_OFFSET_BITS) ignored.

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

 glib/gtester.c |    2 ++
 1 file changed, 2 insertions(+)

commit 38229d47d1996fd046258f09d705d8247bf176ae
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Tue Jan 15 15:47:17 2013 +0800

    Revert "Improvde #include order consistency"

    This reverts commit f2e00a07f49d6ad0e8d790396bcdea913592ce33.

    Moving the block up would prevent G_OS_WIN32 being checked correctly
    as
    it is a macro that is defined by including the GLib header(s),
    at least for
    Visual C++ builds.

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

 gobject/glib-genmarshal.c |    8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 4ba56f3653df55c187bd29ac6e4ebb4d33f4ba61
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Tue Jan 15 15:23:05 2013 +0800

    Bug 688681: Stop using .def files in Visual Studio builds

    Since we are now starting to use __declspec (dllexport) to export the
    public functions during the build of the GLib DLLs (i.e. to
    generate the
    .lib files), we don't want to generate the .def files from the
    .symbols
    files as we did before for a long time.

    This removes from the projects the custom build steps to generate the
    various .def files

    This will also update the pre-configured config.h(.win32.in) to define
    _GLIB_EXTERN appropriately as __declspec (dllexport), as well as
    making its
    entries reflect config.h.in more closely.

 build/win32/vs10/gio.vcxprojin     |   20 --------
 build/win32/vs10/glib.vcxprojin    |   36 -------------
 build/win32/vs10/gmodule.vcxproj   |   20 --------
 build/win32/vs10/gobject.vcxprojin |   20 --------
 build/win32/vs9/gio.vcprojin       |   53 +-------------------
 build/win32/vs9/glib.vcprojin      |   97
 +-----------------------------------
 build/win32/vs9/gmodule.vcproj     |   53 +-------------------
 build/win32/vs9/gobject.vcprojin   |   53 +-------------------
 config.h.win32.in                  |   25 +++++-----
 9 files changed, 16 insertions(+), 361 deletions(-)

commit c4d8eafd00eaed4d712fc7ec206f26d3bb9c1a54
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Tue Jan 15 00:24:27 2013 -0500

    Bump version

 configure.ac |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)