[vala/0.52: 3/4] gobject-2.0: Fix the Closure.invoke() signature




commit ac3c0857127e2d3b3cbe948cad5be2c4ffa42c20
Author: Ole André Vadla Ravnås <oleavr gmail com>
Date:   Fri Jul 9 01:59:07 2021 +0200

    gobject-2.0: Fix the Closure.invoke() signature
    
    The return value must be initialized by the caller, as is clear from
    GLib's internal callers, and e.g. dummy_closure_marshal() on the callee
    side. So it appears the GLib type annotation is incorrect, as it
    specifies `out` but should be `inout`.

 vapi/gobject-2.0.vapi | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
---
diff --git a/vapi/gobject-2.0.vapi b/vapi/gobject-2.0.vapi
index 53f63af1e..e8399ad71 100644
--- a/vapi/gobject-2.0.vapi
+++ b/vapi/gobject-2.0.vapi
@@ -87,7 +87,7 @@ namespace GLib {
                public void add_invalidate_notifier (void* notify_data, GLib.ClosureNotify notify_func);
                public void add_marshal_guards (void* pre_marshal_data, GLib.ClosureNotify 
pre_marshal_notify, void* post_marshal_data, GLib.ClosureNotify post_marshal_notify);
                public void invalidate ();
-               public void invoke (out GLib.Value return_value, [CCode (array_length_cname = 
"n_param_values", array_length_pos = 1.5, array_length_type = "guint")] GLib.Value[] param_values, void* 
invocation_hint);
+               public void invoke (ref GLib.Value return_value, [CCode (array_length_cname = 
"n_param_values", array_length_pos = 1.5, array_length_type = "guint")] GLib.Value[] param_values, void* 
invocation_hint = null);
                [CCode (has_construct_function = false)]
                public Closure.object (uint sizeof_closure, GLib.Object object);
                public unowned GLib.Closure @ref ();


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]