https://bugs.winehq.org/show_bug.cgi?id=46694
Bug ID: 46694 Summary: widl crashes in dlls/atl during build on ppc64el Product: Wine Version: 4.2 Hardware: Other OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown Assignee: wine-bugs@winehq.org Reporter: tpearson@raptorengineering.com Distribution: ---
Created attachment 63657 --> https://bugs.winehq.org/attachment.cgi?id=63657 Backtrace
Building on ppc64el fails with a segmentation fault in widl while attempting to build dlls/atl. Backtrace attached.
https://bugs.winehq.org/show_bug.cgi?id=46694
Timothy Pearson tpearson@raptorengineering.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Blocks| |46330
https://bugs.winehq.org/show_bug.cgi?id=46694
--- Comment #1 from Timothy Pearson tpearson@raptorengineering.com --- There is a questionable statement in tools/widl/write_msft.c, line 2162:
if (-1 < tunion->typelib_idx)
When widl crashes, typelib_idx is == -1, which as I understand it indicates the index is invalid? However, the above statement does not trap the invalid index.
Changing the statement to read as follows resolves the crash:
if (-1 <= tunion->typelib_idx)
Is this change correct in the context of widl design?
https://bugs.winehq.org/show_bug.cgi?id=46694
Zebediah Figura z.figura12@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |z.figura12@gmail.com
--- Comment #2 from Zebediah Figura z.figura12@gmail.com --- (In reply to Timothy Pearson from comment #1)
Changing the statement to read as follows resolves the crash:
if (-1 <= tunion->typelib_idx)
Is this change correct in the context of widl design?
Sorry for the late reply, but no. -1 is meant as a sentinel to say that the index hasn't been assigned yet.
From the backtrace, I guess the union's name is probably NULL. But I don't know
why this would happen on ppc64el specifically. If this bug is still present in current Wine (in particular I wonder if 732f67ed3 made a difference), can you please attach a log of the output generated when running the offending command with the additional option "-d 0x3f"?
https://bugs.winehq.org/show_bug.cgi?id=46694
Fabian Maurer dark.shadow4@web.de changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |dark.shadow4@web.de
--- Comment #3 from Fabian Maurer dark.shadow4@web.de --- Since power pc support got removed, can this be closed?
https://bugs.winehq.org/show_bug.cgi?id=46694
--- Comment #4 from Timothy Pearson tpearson@raptorengineering.com --- Why was ppc64le support removed?
https://bugs.winehq.org/show_bug.cgi?id=46694
--- Comment #5 from Fabian Maurer dark.shadow4@web.de --- Don't ask me, I only saw 61e210f1967a4237d07f5c791433b99f49e78113. There#s 3 commits called "Get rid of PowerPC support"