Module: wine Branch: master Commit: f6b53be0d9c051265846c92ef480bd74dde0a03d URL: http://source.winehq.org/git/wine.git/?a=commit;h=f6b53be0d9c051265846c92ef4...
Author: Rob Shearman robertshearman@gmail.com Date: Tue Mar 23 13:33:01 2010 +0000
widl: Don't pre-calculate buffer size for arrays that aren't treated as reference pointers.
---
tools/widl/typegen.c | 7 ++++--- 1 files changed, 4 insertions(+), 3 deletions(-)
diff --git a/tools/widl/typegen.c b/tools/widl/typegen.c index ca0faf1..c9f9549 100644 --- a/tools/widl/typegen.c +++ b/tools/widl/typegen.c @@ -3069,9 +3069,10 @@ static unsigned int get_required_buffer_size_type( break;
case TGT_ARRAY: - /* FIXME: depends on pointer type */ - return type_array_get_dim(type) * - get_required_buffer_size_type(type_array_get_element(type), name, NULL, FALSE, alignment); + 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, + NULL, FALSE, alignment);
default: break;