diff options
author | Niels De Graef <nielsdegraef@gmail.com> | 2019-08-29 07:45:45 +0200 |
---|---|---|
committer | Thibault Saunier <tsaunier@igalia.com> | 2019-10-24 15:19:09 +0200 |
commit | 35d140ad92572842fd6037184e921cb9497e427b (patch) | |
tree | 5914a304c03ee67713ace048d50462536916375a /plugins/nle/nleoperation.c | |
parent | 44420b2e567d81d529fa9a01b8646817bf927a89 (diff) |
Don't pass default GLib marshallers for signals
By passing NULL to `g_signal_new` instead of a marshaller, GLib will
actually internally optimize the signal (if the marshaller is available
in GLib itself) by also setting the valist marshaller. This makes the
signal emission a bit more performant than the regular marshalling,
which still needs to box into `GValue` and call libffi in case of a
generic marshaller.
Note that for custom marshallers, one would use
`g_signal_set_va_marshaller()` with the valist marshaller instead.
Diffstat (limited to 'plugins/nle/nleoperation.c')
-rw-r--r-- | plugins/nle/nleoperation.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/plugins/nle/nleoperation.c b/plugins/nle/nleoperation.c index ee00ab50..9db2a70f 100644 --- a/plugins/nle/nleoperation.c +++ b/plugins/nle/nleoperation.c @@ -149,7 +149,7 @@ nle_operation_class_init (NleOperationClass * klass) nle_operation_signals[INPUT_PRIORITY_CHANGED] = g_signal_new ("input-priority-changed", G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (NleOperationClass, - input_priority_changed), NULL, NULL, g_cclosure_marshal_generic, + input_priority_changed), NULL, NULL, NULL, G_TYPE_NONE, 2, GST_TYPE_PAD, G_TYPE_UINT); gstelement_class->request_new_pad = |