http://bugs.winehq.org/show_bug.cgi?id=13706
Michael Karcher wine@mkarcher.dialup.fu-berlin.de changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #13973|0 |1 is obsolete| |
--- Comment #6 from Michael Karcher wine@mkarcher.dialup.fu-berlin.de 2008-06-14 07:10:39 --- Created an attachment (id=13997) --> (http://bugs.winehq.org/attachment.cgi?id=13997) New fix
This seems to be an application bug. It checks the pointer in the variant against NULL instead of checking the variant type against VT_EMPTY. With native libraries, the whole var_post_data variant structure is filled with zeroes. Native also allocates it on the stack, so I think it just works by accident.
The attached patch fixes the start of Mankind. This kind of bug explains why it is reproducible only by some people: The contents of uninitialized stack variables is highly dependent on compiler version and switches.