Invalidate single_va_closure when adding an emission hook

If the optimization is used for only having one closure handling a
signal emission, then hooks will not be run, so it should be disabled
when an emission hook is added.

https://bugzilla.gnome.org/show_bug.cgi?id=671918
This commit is contained in:
Mike Gorse 2012-03-13 16:02:30 -05:00 committed by Matthias Clasen
parent fbbdf98668
commit 53b1afba0e

View File

@ -972,6 +972,7 @@ g_signal_add_emission_hook (guint signal_id,
SIGNAL_UNLOCK (); SIGNAL_UNLOCK ();
return 0; return 0;
} }
node->single_va_closure_is_valid = FALSE;
if (!node->emission_hooks) if (!node->emission_hooks)
{ {
node->emission_hooks = g_new (GHookList, 1); node->emission_hooks = g_new (GHookList, 1);