Ensure we always have types for container nodes

svn path=/trunk/; revision=638
This commit is contained in:
Colin Walters 2008-09-29 19:03:46 +00:00
parent ff654e2d4e
commit 9893df46cb

View File

@ -1506,12 +1506,16 @@ end_type_top (ParseContext *ctx)
typenode->tag == GI_TYPE_TAG_GLIST || typenode->tag == GI_TYPE_TAG_GLIST ||
typenode->tag == GI_TYPE_TAG_GSLIST) typenode->tag == GI_TYPE_TAG_GSLIST)
{ {
typenode->parameter_type1 = parse_type (ctx, "any"); if (typenode->parameter_type1 == NULL)
typenode->parameter_type1 = parse_type (ctx, "any");
} }
else if (typenode->tag == GI_TYPE_TAG_GHASH) else if (typenode->tag == GI_TYPE_TAG_GHASH)
{ {
typenode->parameter_type1 = parse_type (ctx, "any"); if (typenode->parameter_type1 == NULL)
typenode->parameter_type2 = parse_type (ctx, "any"); {
typenode->parameter_type1 = parse_type (ctx, "any");
typenode->parameter_type2 = parse_type (ctx, "any");
}
} }
switch (ctx->current_typed->type) switch (ctx->current_typed->type)