18 Aug
2009
18 Aug
'09
9:11 a.m.
Huw Davies <huw(a)codeweavers.com> writes:
@@ -280,9 +282,10 @@ unsigned char get_struct_fc(const type_t *type) if (get_enum_fc(t) == RPC_FC_ENUM16) return RPC_FC_BOGUS_STRUCT; break; - case TGT_POINTER: case TGT_ARRAY: - if (get_pointer_fc(t, field->attrs, FALSE) == RPC_FC_RP || pointer_size != 4) + if(get_array_fc(t) == RPC_FC_BOGUS_ARRAY) return RPC_FC_BOGUS_STRUCT; + case TGT_POINTER: + if(get_pointer_fc(t, field->attrs, FALSE) == RPC_FC_RP || pointer_size != 4)
This doesn't seem to match the midl behavior. For instance in the server.idl test puints_t becomes a bogus struct, but it's a simple struct with midl. -- Alexandre Julliard julliard(a)winehq.org