diff options
author | Rico Tzschichholz <ricotz@ubuntu.com> | 2018-04-15 18:36:25 +0200 |
---|---|---|
committer | Rico Tzschichholz <ricotz@ubuntu.com> | 2018-04-15 18:37:40 +0200 |
commit | 9505405759acc20f1ed2f92aba853448b03e6799 (patch) | |
tree | 5ac853f868b27aafe249e3440639e659c7c8ff82 | |
parent | c3621d0f74783f29f4b58c2eb5d338dabf9428df (diff) | |
download | vala-9505405759acc20f1ed2f92aba853448b03e6799.tar.gz |
libarchive: Add "has_typedef = false" attributes to delegates as needed
https://bugzilla.gnome.org/show_bug.cgi?id=795079
-rw-r--r-- | vapi/libarchive.vapi | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/vapi/libarchive.vapi b/vapi/libarchive.vapi index 750e1184e..7cd5e302b 100644 --- a/vapi/libarchive.vapi +++ b/vapi/libarchive.vapi @@ -41,7 +41,8 @@ namespace Archive { [CCode (cname="archive_close_callback")] public delegate int CloseCallback (Archive archive); - // In reality a "void (*_progress_func)(void *)" parameter without name. + // "void (*_progress_func)(void *)" function pointer without typedef. + [CCode (has_typedef = false)] public delegate void ExtractProgressCallback (); [CCode (cprefix="ARCHIVE_", cname="int", has_type_id = false)] @@ -374,12 +375,14 @@ namespace Archive { public Result set_options (ExtractFlags flags); public Result set_standard_lookup (); - // HACK, they have no name in C. May not work correctly. - [CCode (instance_pos = 0, cname="gid_t")] + // "gid_t (*)(void *, const char *, gid_t)" + [CCode (has_typedef = false, instance_pos = 0)] public delegate Posix.gid_t GroupLookup (string group, Posix.gid_t gid); - [CCode (instance_pos = 0, cname="uid_t")] + // "uid_t (*)(void *, const char *, uid_t)" + [CCode (has_typedef = false, instance_pos = 0)] public delegate Posix.uid_t UserLookup (string user, Posix.uid_t uid); - [CCode (instance_pos = 0, cname="void")] + // "void (*)(void *)" + [CCode (has_typedef = false, instance_pos = 0)] public delegate void Cleanup (); public Result set_group_lookup ( |