[kdbus] Do not set body message if signature field is empty
[platform/upstream/glib.git] / gobject / gclosure.c
index 4ebbfcf..8d0d656 100644 (file)
@@ -42,7 +42,7 @@
  *
  * A #GClosure represents a callback supplied by the programmer. It
  * will generally comprise a function of some kind and a marshaller
- * used to call it. It is the reponsibility of the marshaller to
+ * used to call it. It is the responsibility of the marshaller to
  * convert the arguments for the invocation from #GValues into
  * a suitable form, perform the callback on the converted arguments,
  * and transform the return value back into a #GValue.
@@ -61,9 +61,8 @@
  * marshaller for any closure which is connected to this
  * signal. GObject provides a number of C marshallers for this
  * purpose, see the g_cclosure_marshal_*() functions. Additional C
- * marshallers can be generated with the <link
- * linkend="glib-genmarshal">glib-genmarshal</link> utility.  Closures
- * can be explicitly connected to signals with
+ * marshallers can be generated with the [glib-genmarshal][glib-genmarshal]
+ * utility.  Closures can be explicitly connected to signals with
  * g_signal_connect_closure(), but it usually more convenient to let
  * GObject create a closure automatically by using one of the
  * g_signal_connect_*() functions which take a callback function/user
@@ -156,7 +155,7 @@ enum {
  * struct _MyClosure
  * {
  *   GClosure closure;
- *   /&ast; extra data goes here &ast;/
+ *   // extra data goes here
  * };
  *
  * static void
@@ -165,7 +164,7 @@ enum {
  * {
  *   MyClosure *my_closure = (MyClosure *)closure;
  *
- *   /&ast; free extra data here &ast;/
+ *   // free extra data here
  * }
  *
  * MyClosure *my_closure_new (gpointer data)
@@ -176,7 +175,7 @@ enum {
  *   closure = g_closure_new_simple (sizeof (MyClosure), data);
  *   my_closure = (MyClosure *) closure;
  *
- *   /&ast; initialize extra data here &ast;/
+ *   // initialize extra data here
  *
  *   g_closure_add_finalize_notifier (closure, notify_data,
  *                                    my_closure_finalize);
@@ -308,9 +307,8 @@ g_closure_set_meta_va_marshal (GClosure       *closure,
  * Sets the meta marshaller of @closure.  A meta marshaller wraps
  * @closure->marshal and modifies the way it is called in some
  * fashion. The most common use of this facility is for C callbacks.
- * The same marshallers (generated by <link
- * linkend="glib-genmarshal">glib-genmarshal</link>) are used
- * everywhere, but the way that we get the callback function
+ * The same marshallers (generated by [glib-genmarshal][glib-genmarshal]),
+ * are used everywhere, but the way that we get the callback function
  * differs. In most cases we want to use @closure->callback, but in
  * other cases we want to use some different technique to retrieve the
  * callback function.
@@ -611,7 +609,7 @@ g_closure_unref (GClosure *closure)
  * |[<!-- language="C" --> 
  * closure = g_cclosure_new (cb_func, cb_data);
  * g_source_set_closure (source, closure);
- * g_closure_unref (closure); /&ast; GObject doesn't really need this &ast;/
+ * g_closure_unref (closure); // GObject doesn't really need this
  * ]|
  * Because g_source_set_closure() (and similar functions) take ownership of the
  * initial reference count, if it is unowned, we instead can write:
@@ -1371,6 +1369,9 @@ va_to_ffi_type (GType gtype,
  * A generic marshaller function implemented via
  * [libffi](http://sourceware.org/libffi/).
  *
+ * Normally this function is not passed explicitly to g_signal_new(),
+ * but used automatically by GLib when specifying a %NULL marshaller.
+ *
  * Since: 2.30
  */
 void
@@ -1489,9 +1490,6 @@ g_cclosure_marshal_generic_va (GClosure *closure,
   args =  g_alloca (sizeof (gpointer) * n_args);
   storage = g_alloca (sizeof (va_arg_storage) * n_params);
 
-  if (tmpval_used)
-    enum_tmpval = g_alloca (sizeof (gint));
-
   if (G_CCLOSURE_SWAP_DATA (closure))
     {
       atypes[n_args-1] = &ffi_type_pointer;