[PATCH v2 1/2] widl: don't use local methods when writing async interfaces
Steve Lhomme
robux4 at ycbcr.xyz
Wed Dec 16 08:38:22 CST 2020
The same entries can have a different call_as between the synchronous and
asynchronous interfaces and shouldn't be mixed up.
---
tools/widl/header.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/tools/widl/header.c b/tools/widl/header.c
index 223ab5c5ca9..e6de236a25f 100644
--- a/tools/widl/header.c
+++ b/tools/widl/header.c
@@ -1614,7 +1614,8 @@ static void write_com_interface_end(FILE *header, type_t *iface)
if (!dispinterface && !winrt_mode)
{
write_method_proto(header, iface);
- write_locals(header, iface, FALSE);
+ if (type_iface_get_async_iface(iface) != iface)
+ write_locals(header, iface, FALSE);
fprintf(header, "\n");
}
fprintf(header, "#endif /* __%s_%sINTERFACE_DEFINED__ */\n", iface->c_name, dispinterface ? "DISP" : "");
--
2.29.2
More information about the wine-devel
mailing list