diff --git a/vapi/glib-2.0.vapi b/vapi/glib-2.0.vapi
index d6ace50..a860f9b 100644
--- a/vapi/glib-2.0.vapi
+++ b/vapi/glib-2.0.vapi
@@ -2018,7 +2018,7 @@ namespace GLib {
 	public struct IConv {
 		public static IConv open (string to_codeset, string from_codeset);
 		[CCode (cname = "g_iconv")]
-		public uint iconv (out string inbuf, out uint inbytes_left, out string outbuf, out uint outbytes_left);
+		public size_t iconv ([CCode (array_length_type = "gsize")] ref char[] inbuf, [CCode (array_length_type = "gsize")] out char[] outbuf);
 		public int close ();
 	}
 
