Zebediah Figura : widl: Write pointer classes for explicitly declared arrays only if they are top-level parameters.

Alexandre Julliard julliard at winehq.org
Mon Oct 7 17:02:14 CDT 2019


Module: wine
Branch: master
Commit: dd35baa8e326462c1c3ea31b2023e62b2d8f6ee9
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=dd35baa8e326462c1c3ea31b2023e62b2d8f6ee9

Author: Zebediah Figura <z.figura12 at gmail.com>
Date:   Fri Oct  4 23:43:35 2019 -0500

widl: Write pointer classes for explicitly declared arrays only if they are top-level parameters.

Signed-off-by: Zebediah Figura <z.figura12 at gmail.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 tools/widl/typegen.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/tools/widl/typegen.c b/tools/widl/typegen.c
index 1ad3e63c6a..c4ccd99771 100644
--- a/tools/widl/typegen.c
+++ b/tools/widl/typegen.c
@@ -3611,7 +3611,8 @@ static unsigned int write_type_tfs(FILE *file, const attr_list_t *attrs,
         {
             int ptr_type;
             ptr_type = get_pointer_fc_context(type, attrs, context);
-            if (ptr_type != FC_RP || type_array_is_decl_as_ptr(type))
+            if (type_array_is_decl_as_ptr(type)
+                    || (ptr_type != FC_RP && context == TYPE_CONTEXT_TOPLEVELPARAM))
             {
                 unsigned int absoff = type->typestring_offset;
                 short reloff = absoff - (*typeformat_offset + 2);




More information about the wine-cvs mailing list