On the 'next' branch, telepathy-glib's signals marshaller infrastructure is one of the things that makes it difficult to split the library into high-level and auto-generated parts. Happily, GLib 2.30 has a generic marshaller using libffi, so we don't have to do this any more. We might as well do this in 0.17.x. (... but if anyone objects to doing this in 0.17.x, 'next' would be fine too)
Created attachment 57528 [details] [review] [1/4] Require GLib 2.30, for g_cclosure_marshal_generic()
Created attachment 57529 [details] [review] [2/4] Generate code that uses g_cclosure_marshal_generic() I'm using the symbol explicitly in the generated code, because if someone copies the tools into another project but forgets to increase the GLib dependency, failing to compile with a missing symbol is a much nicer failure mode than failing to work at runtime. (Also, I haven't checked whether dbus-glib copes gracefully with NULL as a marshaller.)
Created attachment 57530 [details] [review] [3/4] Use GLib's default marshaller everywhere In contrast to the previous commit, I'm just using NULL here - telepathy-glib has an explicit dependency on GLib 2.30.
Created attachment 57531 [details] [review] [4/4] Stop generating lists of signals marshallers altogether
Looks good.
(In reply to comment #5) > Looks good. Thanks, merged for 0.17.6.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.