https://bugs.winehq.org/show_bug.cgi?id=47041
Bug ID: 47041 Summary: wire_marshal attribute ignored and the underlying type is used instead Product: Wine Version: 3.2 Hardware: x86 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: rpc Assignee: wine-bugs@winehq.org Reporter: richard@torproject.org Distribution: ---
Assuming the following idl snippet:
typedef struct _FooWindowHandle {long data1; long data2;}; typedef [unique] FooWindowHandle * fooWH; cpp_quote("#if 0") typedef [wire_marshal(fooWH)] void* WH; cpp_quote("#endif // 0")
The wire_marshal attribute appears to be ignored, and for interfaces using the WH type, void* is used instead. As _FooWindowHandle ends up not being used, its definition is not included in the final tlb.
I've created a branch with a min-repro here:
https://github.com/pospeselr/mingw-widl-bug/tree/wire_marshal_bug
This branch includes the typelib generated by the midl.exe version 8.01.0622 from the VS 2019 SDK. Also note that I'm working against version 3.2 today, but this issue also occurs in version 4.5.
https://bugs.winehq.org/show_bug.cgi?id=47041
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download, source, testcase CC| |austinenglish@gmail.com
https://bugs.winehq.org/show_bug.cgi?id=47041
Richard Pospesel richard@torproject.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Version|3.2 |4.5
--- Comment #1 from Richard Pospesel richard@torproject.org --- Regenerated the tlb in the github repo with widl version 4.5
https://bugs.winehq.org/show_bug.cgi?id=47041
--- Comment #2 from Richard Pospesel richard@torproject.org --- Blocker for Mozilla bug #1520177: ( https://bugzilla.mozilla.org/show_bug.cgi?id=1520177 )
https://bugs.winehq.org/show_bug.cgi?id=47041
Richard Pospesel richard@torproject.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Depends on| |47035
https://bugs.winehq.org/show_bug.cgi?id=47041
--- Comment #3 from Richard Pospesel richard@torproject.org --- I've a patch for this that's dependent on the fix to 47035, will submit it once 47035 goes through. In the meantime the fix can be found here:
https://github.com/pospeselr/wine/commit/607fde50eb3223bc83a44c27f05680bb9c6...
https://bugs.winehq.org/show_bug.cgi?id=47041 Bug 47041 depends on bug 47035, which changed state.
Bug 47035 Summary: widl generates typelib file with enums multiply defined https://bugs.winehq.org/show_bug.cgi?id=47035
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution|--- |FIXED
https://bugs.winehq.org/show_bug.cgi?id=47041
Zebediah Figura z.figura12@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Fixed by SHA1| |57f697e137e099837d8ed3eb00c | |d2814bfc135df CC| |z.figura12@gmail.com Resolution|--- |FIXED
--- Comment #4 from Zebediah Figura z.figura12@gmail.com --- Fixed by https://source.winehq.org/git/wine.git/commitdiff/57f697e137e099837d8ed3eb00cd2814bfc135df; thanks Richard.
https://bugs.winehq.org/show_bug.cgi?id=47041
--- Comment #5 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 4.15.
https://bugs.winehq.org/show_bug.cgi?id=47041
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #6 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 4.15.
https://bugs.winehq.org/show_bug.cgi?id=47041
--- Comment #7 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 4.15.