Pass through recursive types. Avoid overwriting errors. Always write the

2008-08-22  Colin Walters  <walters@verbum.org>

	* girepository/girparser.c: Pass through
	recursive types.  Avoid overwriting errors.
	* giscanner/xmlwriter.py: Always write the
	XML header.
	* tests/*.gir: Adjust.
	* tests/scanner/Makefile.am: Build typelibs,
	and generate XML from those.  Once we
	have a good diff mechanism...
	* tests/scanner/*-expected.gir: Add XML
	header.
	* tools/g-ir-scanner: Accept --typelib-xml
	option.
	* tools/generate.c: Better defaults for transfer.

svn path=/trunk/; revision=457
This commit is contained in:
Colin Walters 2008-08-22 20:05:23 +00:00 committed by Philip Withnall
parent ab1e9433db
commit cf73901c6b

View File

@ -279,22 +279,19 @@ write_callable_info (const gchar *namespace,
g_fprintf (file, "%*s <parameter name=\"%s\"", g_fprintf (file, "%*s <parameter name=\"%s\"",
indent, "", g_base_info_get_name ((GIBaseInfo *) arg)); indent, "", g_base_info_get_name ((GIBaseInfo *) arg));
if (g_type_info_is_pointer (type)) switch (g_arg_info_get_ownership_transfer (arg))
{ {
switch (g_arg_info_get_ownership_transfer (arg)) case GI_TRANSFER_NOTHING:
{ break;
case GI_TRANSFER_NOTHING: case GI_TRANSFER_CONTAINER:
break; g_fprintf (file, " transfer=\"shallow\"");
case GI_TRANSFER_CONTAINER: break;
g_fprintf (file, " transfer=\"shallow\""); case GI_TRANSFER_EVERYTHING:
break; g_fprintf (file, " transfer=\"full\"");
case GI_TRANSFER_EVERYTHING: break;
g_fprintf (file, " transfer=\"full\""); default:
break; g_assert_not_reached ();
default: }
g_assert_not_reached ();
}
}
g_fprintf (file, " direction=\""); g_fprintf (file, " direction=\"");
switch (g_arg_info_get_direction (arg)) switch (g_arg_info_get_direction (arg))