added recursive mutex to protect class initialization, default interface
author18:52:07 Tim Janik <timj@imendio.com>
Tue, 5 Feb 2008 17:52:52 +0000 (17:52 +0000)
committerTim Janik <timj@src.gnome.org>
Tue, 5 Feb 2008 17:52:52 +0000 (17:52 +0000)
commit0dd27821f21f2252381e05527885cede629dbee3
tree419ff1e77e25658ede31178763328d7ecab68e71
parentdfa5b08805b861e8b1f2ac4f8bb685a75b3cc04a
added recursive mutex to protect class initialization, default interface

2008-02-05 18:52:07  Tim Janik  <timj@imendio.com>

        * gtype.c: added recursive mutex to protect class initialization,
        default interface initialization and per-class interface construction.
        a lock to this recursive mutex is held during user callback invocations
        such as initializers or finalizers, effectively allowing only one thread
        to run class/interface initializers/finalizers at a time.
        also made misc fixups. this fixes:
        Bug 64764 - Class initialization isn't thread safe.

svn path=/trunk/; revision=6454
gobject/ChangeLog
gobject/gtype.c