zero-terminated annotation ignored for byte arrays
Submitted by Mikhail Zabaluev
In cases where it's necessary to avoid the blanket typecasting of byte string pointers as
utf8 in introspection, the following annotation is used:
(array zero-terminated=1) (element-type guint8)
It can be seen on parameters of g_spawn_command_line_sync(), and it really should be used in many other places. Unfortunately, gobject-introspection currently eats the zero-terminated flag on arrays of guint8 or gchar, emitting a not-so-useful description of an array type of unknown length. Oddly, zero-terminated is preserved when accompanied with a length parameter, like on g_variant_dup_bytestring().