widl: Only return a buffer size for fixed-size arrays.

This commit is contained in:
Alexandre Julliard 2011-05-24 22:30:23 +02:00
parent 6c9cff2e3f
commit 050f6f38d5
1 changed files with 11 additions and 3 deletions

View File

@ -3214,9 +3214,17 @@ static unsigned int get_required_buffer_size_type(
case TGT_ARRAY: case TGT_ARRAY:
if (get_pointer_fc(type, attrs, toplevel_param) == RPC_FC_RP) if (get_pointer_fc(type, attrs, toplevel_param) == RPC_FC_RP)
return type_array_get_dim(type) * {
get_required_buffer_size_type(type_array_get_element(type), name, switch (get_array_fc(type))
NULL, FALSE, alignment); {
case RPC_FC_SMFARRAY:
case RPC_FC_LGFARRAY:
return type_array_get_dim(type) *
get_required_buffer_size_type(type_array_get_element(type), name,
NULL, FALSE, alignment);
}
}
break;
default: default:
break; break;