GNOME Bugzilla – Bug 607293
Usage of new G_VALUE_COLLECT_INIT cause seg. fault.
Last modified: 2010-01-18 14:18:11 UTC
When using G_VALUE_COLLECT_INIT in g_signal_emit_valist (), the data of each GValue is never initialized which may cause unpredictable results for some GTypes on most platforms (I guess). I'm getting seg. fault on windows using GstMiniObject collector. The GstMiniObject implementation will unref an existing object if set in the GValue structure when collecting, which causes an unref of the pointer which should have been NULL. My patch uses g_slice_alloc0 () instead of plain g_slice_alloc (). Due to optimization work in this area, this should be revised and maybe fixed in another manner. Maybe in G_VALUE_COLLECT_INIT?? A fix for bug #603590 introduced this bug.
Created attachment 151660 [details] [review] Workaround fix which uses g_slice_alloc0
I in fact looked through my 'work' git branch and did have the exact same patch. This should be pushed asap.
Bugfix has already been reported in bug #603590. Closing this as duplicate *** This bug has been marked as a duplicate of bug 603590 ***