diff options
author | Giovanni Campagna <gcampagna@src.gnome.org> | 2014-05-06 18:53:21 +0200 |
---|---|---|
committer | Giovanni Campagna <gcampagna@src.gnome.org> | 2014-07-03 10:31:17 +0200 |
commit | a4c9d09d7a89d3c80b4465a5c2ae0efa24158b24 (patch) | |
tree | f56b061a761dd45ed64d9015c8a7cf00b46be710 /girepository/gitypelib-internal.h | |
parent | b2bf49eae922bffddc952fcc22e4acbd7d40c5f3 (diff) | |
download | gobject-introspection-a4c9d09d7a89d3c80b4465a5c2ae0efa24158b24.tar.gz |
Parse and expose ownership transfer for instance parameters
Knowing the ownership transfer for instance parameters is
necessary for correct memory management of functions which
"eat" their instance argument, such as g_dbus_method_invocation_return_*.
Parse this information from the gir file and store in the
typelib, and then provide new API on GICallableInfo to
retrieve this.
https://bugzilla.gnome.org/show_bug.cgi?id=729662
Diffstat (limited to 'girepository/gitypelib-internal.h')
-rw-r--r-- | girepository/gitypelib-internal.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/girepository/gitypelib-internal.h b/girepository/gitypelib-internal.h index 93d621b2..5ccb6173 100644 --- a/girepository/gitypelib-internal.h +++ b/girepository/gitypelib-internal.h @@ -465,6 +465,8 @@ typedef struct { * freeing the container, but not its contents. * @skip_return: Indicates that the return value is only useful in C and should * be skipped. + * @instance_transfer_ownership: When calling, the function assumes ownership of + * the instance parameter. * @reserved: Reserved for future use. * @n_arguments: The number of arguments that this function expects, also the * length of the array of ArgBlobs. @@ -479,7 +481,8 @@ typedef struct { guint16 caller_owns_return_value : 1; guint16 caller_owns_return_container : 1; guint16 skip_return : 1; - guint16 reserved :12; + guint16 instance_transfer_ownership : 1; + guint16 reserved :11; guint16 n_arguments; |