hook_size * G_HOOKS_PREALLOC,
G_ALLOC_AND_FREE);
hook_list->hook_free = NULL;
+ hook_list->hook_destroy = NULL;
}
void
{
hook->hook_id = 0;
hook->flags &= ~G_HOOK_FLAG_ACTIVE;
- if (hook->destroy)
+ if (hook_list->hook_destroy)
+ {
+ hook_list->hook_destroy (hook_list, hook);
+ hook->destroy = NULL;
+ }
+ else if (hook->destroy)
{
GDestroyNotify destroy;