there was a reference count race for hooks during invocation loops. since
authorTim Janik <timj@gtk.org>
Mon, 21 Dec 1998 21:43:00 +0000 (21:43 +0000)
committerTim Janik <timj@src.gnome.org>
Mon, 21 Dec 1998 21:43:00 +0000 (21:43 +0000)
commit097c9b17985efe03bf7d5a1b073d81f526218c87
treec74e266ccd11d53c49c934a7d7876f27f97dcc2f
parent85755f7e77f5283cc13d2e8f7d841d2e151bfc33
there was a reference count race for hooks during invocation loops. since

Mon Dec 21 21:48:29 1998  Tim Janik  <timj@gtk.org>

        * glib.h:
        * gmain.c: there was a reference count race for hooks during invocation
        loops. since all (known) hook loop implementations, do currently start
        out with g_hook_first_valid() and iterate with g_hook_next_valid(),
        g_hook_first_valid() will now return a referenced hook, and
        g_hook_next_valid() will "eat" that, and eventually transfer it to
        the next hook. <sigh> unfortunately this requires g_hook_next_valid()
        to take the hook_list as additional argument.

        * gmain.c (g_main_iterate): adjusted callers of g_hook_next_valid().
14 files changed:
ChangeLog
ChangeLog.pre-2-0
ChangeLog.pre-2-10
ChangeLog.pre-2-12
ChangeLog.pre-2-2
ChangeLog.pre-2-4
ChangeLog.pre-2-6
ChangeLog.pre-2-8
ghook.c
glib.h
glib/ghook.c
glib/glib.h
glib/gmain.c
gmain.c