gio: ensure default va_marshaller is used

If c_marshaller is provided during g_signal_new() registration, the
automatic va_marshaller will not be set. If we leave the c_marshaller as
NULL in the simple cases, both a c_marshaller and va_marshaller will be
set for us.

This is particularly helpful when dealing with stack traces from Linux
perf, which often cannot unwind the stack beyond the ffi_call_unix64
stack-frame on x86_64.

Related to GNOME/Initiatives#10
This commit is contained in:
Christian Hergert
2019-05-30 19:13:37 -07:00
parent 2a4b5caac2
commit 273c00f620
17 changed files with 43 additions and 43 deletions

View File

@@ -260,7 +260,7 @@ g_action_group_default_init (GActionGroupInterface *iface)
G_SIGNAL_RUN_LAST | G_SIGNAL_DETAILED,
G_STRUCT_OFFSET (GActionGroupInterface, action_added),
NULL, NULL,
g_cclosure_marshal_VOID__STRING,
NULL,
G_TYPE_NONE, 1,
G_TYPE_STRING);
@@ -281,7 +281,7 @@ g_action_group_default_init (GActionGroupInterface *iface)
G_SIGNAL_RUN_LAST | G_SIGNAL_DETAILED,
G_STRUCT_OFFSET (GActionGroupInterface, action_removed),
NULL, NULL,
g_cclosure_marshal_VOID__STRING,
NULL,
G_TYPE_NONE, 1,
G_TYPE_STRING);