commit 3d76112aed79b590b79899e46610ce7b2ecffc53
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Wed Oct 7 09:28:19 2009 -0400

    Updates

 NEWS |   19 ++++++++++++++++++-
 1 files changed, 18 insertions(+), 1 deletions(-)

commit 855deaa5780bfef3f6e8b3a41d00d6c7e40ca406
Author: Cody Russell <bratsche@gnome.org>
Date:   Tue Oct 6 12:27:12 2009 -0400

    g_object_unref racy condition can lead to crash

    Store whether the object has a toggleref before decrementing the
    refcount to prevent race condition when two threads simultaneously
    try to unref an object with a refcount of 2.
    Patch by Antoine Tremblay.

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

 gobject/gobject.c |   12 +++++++++---
 1 files changed, 9 insertions(+), 3 deletions(-)

commit afa0db59df9b28d9ae8da9539f629165cc8490f3
Author: Leonid Kanter <leon@asplinux.ru>
Date:   Tue Oct 6 11:52:48 2009 +0300

    Updated Russian translation by <vicanis@gmail.com>

 po/ru.po | 1072
 +++++++++++++++++++++++++++++++-------------------------------
 1 files changed, 533 insertions(+), 539 deletions(-)

commit 68b1ca04433846b68141a72029ed67ae117a7e94
Author: Edward Hervey <bilboed@bilboed.com>
Date:   Sat Oct 3 12:37:36 2009 +0200

    gobject/gtype.h: Fix _G_TYPE_CVH macro. Fixes #597194

    If __val doesn't exist, we shouldn't do any other checks.

 gobject/gtype.h |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

commit 1937765f9f9052a870cfd924b18e08aa8901a8f2
Author: Alexander Larsson <alexl@redhat.com>
Date:   Wed Aug 19 17:24:16 2009 +0200

    Add fast path for construction with no params

    This avoids a bunch of code and makes construction of simple objects
    faster.

    Object construction performance improvement:
             Non-Threaded   Threaded
    Simple:           14%         5%
    Complex:        -1.1%      -2.2%

    Other tests stable.

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

 gobject/gobject.c |   14 +++++++++++++-
 1 files changed, 13 insertions(+), 1 deletions(-)

commit ffc625ec9bcc4b2d34921940c07b28d244f2257a
Author: Alexander Larsson <alexl@redhat.com>
Date:   Wed Aug 19 17:22:32 2009 +0200

    Don't freeze/thaw notification during construction if no properties

    If the class has no properties there could be no notification anyway.
    This is an important optimization for construction of simple objects.

    Object construction performance improvement:
             Non-Threaded   Threaded
    Simple:           84%        91%
    Complex:        -1.4%      -0.6%

    Other tests stable.

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

 gobject/gobject.c |   37 +++++++++++++++++++++++++------------
 1 files changed, 25 insertions(+), 12 deletions(-)

commit 302d13a757c164346883841ce040208906894b71
Author: Alexander Larsson <alexl@redhat.com>
Date:   Fri Oct 2 19:27:48 2009 +0200

    Add a check that no properties are added after a class is derived

    We can't support that, because that would cause the
    CLASS_HAS_PROPS_FLAG
    class flag to not be correct.

 gobject/gobject.c |   14 ++++++++++++++
 1 files changed, 14 insertions(+), 0 deletions(-)

commit 39a1fe5782c15873ab18b8d3d76adfcbd70dc6dd
Author: Alexander Larsson <alexl@redhat.com>
Date:   Wed Aug 19 17:21:18 2009 +0200

    Add GObjectClass flag CLASS_HAS_PROPS_FLAG

    This is set if a class or any of its parents have installed any
    properties.

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

 gobject/gobject.c |    6 ++++++
 1 files changed, 6 insertions(+), 0 deletions(-)

commit 301d52d858b8e7d4b804b893dc2f740aaa0d5aa5
Author: Alexander Larsson <alexl@redhat.com>
Date:   Wed Aug 19 17:17:41 2009 +0200

    Add flags member for GObjectClass

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

 gobject/gobject.h |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)

commit af017accc55aff3d6f28df0a41724e93fca71ff4
Author: Alexander Larsson <alexl@redhat.com>
Date:   Wed Aug 19 15:48:19 2009 +0200

    Allocate GObjectNotifyQueue with g_slice instead of abusing g_list

    This is both cleaner and faster (it avoids function calls and
    zeroing the memory twice).

    Object construction performance improvement:
             Non-Threaded   Threaded
    Simple:           11%       1.3%
    Complex:           8%         6%

    Other tests stable.

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

 gobject/gobjectnotifyqueue.c |    9 ++-------
 1 files changed, 2 insertions(+), 7 deletions(-)

commit f4d9789fcfc4c9be497414d6c65476adb9d20236
Author: Alexander Larsson <alexl@redhat.com>
Date:   Wed Sep 9 17:08:57 2009 +0200

    Add gobject performance tests for threaded code

    This measures how much things like lock contention affects the gobject
    code.

 tests/gobject/Makefile.am            |    2 +
 tests/gobject/performance-threaded.c |  381
 ++++++++++++++++++++++++++++++++++
 2 files changed, 383 insertions(+), 0 deletions(-)

commit b1f94af095bde6a9a695ce7b19425a62288ee0ee
Author: Alexander Larsson <alexl@redhat.com>
Date:   Thu Aug 20 14:34:51 2009 +0200

    Add performance tests for GObject primitives

    These are basic performance test for a couple of basic gobject
    primitives:

    * construction of simple objects. Simple is a bare gobject derived
      class with no properties, signals or interfaces.

    * construction of complex objects. Complex is a gobject subclass
      with construct properties, normal properties, signals, and
      implements an interface.

    * run-time type check of complex objects

    * signal emissions

    Lots of care is taken to try to make the results reproducible. Each
    test is run for multible "rounds", where we try to make each round be
    "not too short" in order to be significant wrt timer accuracy, but
    also "not to long" to make the probability of some other random event
    happening on the system (interrupts, other process scheduled, etc)
    during the round less likely.
    The current target round time is 4 msecs, which was picked without
    rigour, but seems small wrt e.g. scheduler time.

    For each test we then run the calculated round size for 60 seconds,
    and then report the performance based on the minimal time of one
    round. The model here is that any random stuff that happens during a
    round can only slow it down, there is nothing that can make it go
    faster, so the minimal time is the best estimate of how fast one round
    goes.

    The result is not ideal, even on a "idle" system the results vary
    from round to round, but the variation seems to be less than 1%.
    So, any performance difference reported by this test over 1% is
    probably statistically significant.

    Additionally the tests can be run with or without threads being
    initialized. The script tests/gobject/run-performance.sh makes
    it easy to produce a performance report for the current checkout.

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

 tests/gobject/Makefile.am        |    2 +
 tests/gobject/performance.c      |  735
 ++++++++++++++++++++++++++++++++++++++
 tests/gobject/run-performance.sh |    7 +
 3 files changed, 744 insertions(+), 0 deletions(-)

commit 07ad638adff596ccd4bc2ec003be692059210357
Author: Alexander Larsson <alexl@redhat.com>
Date:   Fri Oct 2 12:54:18 2009 +0200

    remove xdgmime test

    This is getting diverged from the xdgmime copy and we don't need
    it here.

 gio/xdgmime/Makefile.am |    5 -
 gio/xdgmime/test-mime.c |  196
 -----------------------------------------------
 2 files changed, 0 insertions(+), 201 deletions(-)

commit c7c0bcef893ca99609b102b42be5f871b9524a92
Author: Alexander Larsson <alexl@redhat.com>
Date:   Fri Oct 2 12:06:25 2009 +0200

    xdgmime - Correct the range checks for magic matching

 gio/xdgmime/xdgmimecache.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

commit 2624e7d6c6ddc5ad93caa7ce609092b6b54cb6d2
Author: Alexander Larsson <alexl@redhat.com>
Date:   Fri Oct 2 12:06:15 2009 +0200

    Remove unnecessary includes

 gio/xdgmime/xdgmimecache.c |    1 -
 gio/xdgmime/xdgmimeglob.c  |    1 -
 2 files changed, 0 insertions(+), 2 deletions(-)

commit e1643fd76daf66ccffd9e6818e4f4ec8272e2a51
Author: Alexander Larsson <alexl@redhat.com>
Date:   Fri Oct 2 09:49:51 2009 +0200

    xdgmime - support the new case sensitive flag

 gio/xdgmime/xdgmimecache.c |   86
 +++++++++++++++++++++++++++++++++----------
 gio/xdgmime/xdgmimeglob.c  |   88
 +++++++++++++++++++++++++++++++++++--------
 2 files changed, 137 insertions(+), 37 deletions(-)

commit 7c27df1feeea1d6ab8b927285cecc4ac34db8b06
Author: Alexander Larsson <alexl@redhat.com>
Date:   Fri Oct 2 09:48:35 2009 +0200

    xdgmime - support cache files with minor version 2

 gio/xdgmime/xdgmimecache.c |   10 ++++++++--
 1 files changed, 8 insertions(+), 2 deletions(-)

commit ce239a010e29c91f683dae354060f6ec6213e148
Author: Alexander Larsson <alexl@redhat.com>
Date:   Fri Oct 2 09:46:33 2009 +0200

    Read the new glob2 format with case sensitive flags

 gio/xdgmime/xdgmime.c     |    4 +-
 gio/xdgmime/xdgmimeglob.c |   83
 ++++++++++++++++++++++++++++++++------------
 gio/xdgmime/xdgmimeglob.h |    6 ++-
 3 files changed, 66 insertions(+), 27 deletions(-)

commit 5e4a895bb37271169cb8c055d9ce1e3efe6ca525
Author: Tor Lillqvist <tml@iki.fi>
Date:   Fri Oct 2 12:43:21 2009 +0300

    Drop the VS8 project files from tarballs as they are unmaintained

 build/win32/Makefile.am |    1 -
 1 files changed, 0 insertions(+), 1 deletions(-)

commit e5734fb87563181ee9f1f2827cb49d81e8ea28a7
Author: Pierre A. Joye <pierre.php@gmail.com>
Date:   Fri Oct 2 12:34:44 2009 +0300

    Update VS9 project files to fix build

    From bug #596784

 build/win32/vs9/gio.vcproj                 |  110
 +++++++++++++++++++++++++++-
 build/win32/vs9/glib.vcproj                |   10 ++-
 build/win32/vs9/gmodule.vcproj             |    2 +-
 build/win32/vs9/gobject.vcproj             |    2 +-
 build/win32/vs9/gspawn-win32-helper.vcproj |    2 +-
 build/win32/vs9/gthread.vcproj             |    2 +-
 build/win32/vs9/install.vcproj             |    4 +-
 7 files changed, 122 insertions(+), 10 deletions(-)

commit e9fe53980b0ce8480c483774961b93388f3a55fe
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Tue Sep 29 23:06:45 2009 -0400

    Fix --runtime-libdir option

    For stable releases, it needs to take LT_REVISION into account, not
    hardcode 0.

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

commit eeaf8c51209cbd11573adf6f6ba0d34f85920b1f
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Tue Sep 29 22:07:04 2009 -0400

    Bump version

 configure.in |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

commit fffc3d41bd0968c37fd3edddf35a555fe91151d3
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Tue Sep 29 22:05:27 2009 -0400

    2.22.1

 po/am.po          |   58 ++--
 po/ar.po          |   61 ++--
 po/as.po          |   61 ++--
 po/az.po          |   58 ++--
 po/be.po          |   59 ++--
 po/be@latin.po    |   61 ++--
 po/bg.po          |   61 ++--
 po/bn.po          |  932
 ++++++++++++++++++++++++++--------------------------
 po/bn_IN.po       |   61 ++--
 po/bs.po          |   58 ++--
 po/ca.po          |   61 ++--
 po/ca@valencia.po |   61 ++--
 po/cs.po          |   61 ++--
 po/cy.po          |   59 ++--
 po/da.po          |   61 ++--
 po/de.po          |   61 ++--
 po/dz.po          |   59 ++--
 po/el.po          |   61 ++--
 po/en_CA.po       |   61 ++--
 po/en_GB.po       |   61 ++--
 po/eo.po          |   58 ++--
 po/es.po          |   61 ++--
 po/et.po          |   61 ++--
 po/eu.po          |   61 ++--
 po/fa.po          |   59 ++--
 po/fi.po          |   61 ++--
 po/fr.po          |   61 ++--
 po/ga.po          |   60 ++--
 po/gl.po          |   61 ++--
 po/gu.po          |   61 ++--
 po/he.po          |  937
 ++++++++++++++++++++++++++---------------------------
 po/hi.po          |   61 ++--
 po/hr.po          |   58 ++--
 po/hu.po          |   61 ++--
 po/hy.po          |   58 ++--
 po/id.po          |   59 ++--
 po/is.po          |   58 ++--
 po/it.po          |   61 ++--
 po/ja.po          |   61 ++--
 po/ka.po          |   59 ++--
 po/kn.po          |   61 ++--
 po/ko.po          |   61 ++--
 po/ku.po          |   58 ++--
 po/lt.po          |   61 ++--
 po/lv.po          |   58 ++--
 po/mai.po         |   61 ++--
 po/mg.po          |   59 ++--
 po/mk.po          |   61 ++--
 po/ml.po          |   61 ++--
 po/mn.po          |   59 ++--
 po/mr.po          |   61 ++--
 po/ms.po          |   58 ++--
 po/nb.po          |   61 ++--
 po/ne.po          |   59 ++--
 po/nl.po          |   61 ++--
 po/nn.po          |   61 ++--
 po/oc.po          |   59 ++--
 po/or.po          |   61 ++--
 po/pa.po          |   61 ++--
 po/pl.po          |   61 ++--
 po/ps.po          |   61 ++--
 po/pt.po          |   61 ++--
 po/pt_BR.po       |   61 ++--
 po/ro.po          |   61 ++--
 po/ru.po          |   61 ++--
 po/rw.po          |   58 ++--
 po/si.po          |   59 ++--
 po/sk.po          |   60 ++--
 po/sl.po          |   61 ++--
 po/sq.po          |   61 ++--
 po/sr.po          |   61 ++--
 po/sr@ije.po      |   58 ++--
 po/sr@latin.po    |   61 ++--
 po/sv.po          |   61 ++--
 po/ta.po          |   61 ++--
 po/te.po          |   61 ++--
 po/th.po          |   61 ++--
 po/tl.po          |   59 ++--
 po/tr.po          |   61 ++--
 po/tt.po          |   59 ++--
 po/uk.po          |   61 ++--
 po/vi.po          |   61 ++--
 po/wa.po          |   58 ++--
 po/xh.po          |   59 ++--
 po/yi.po          |   58 ++--
 po/zh_CN.po       |   61 ++--
 po/zh_HK.po       |   61 ++--
 po/zh_TW.po       |   61 ++--
 88 files changed, 3278 insertions(+), 3765 deletions(-)

commit 82c6bf7d8c6abeda6dff80e5b754411398232cc3