[dinput] regression c17e06d5c0e456d3052a1b6de688956f87c59d3e: No need to copy default constant format. Use already defined static instead

Christoph Frick frick at sc-networks.de
Wed Dec 20 05:06:10 CST 2006


hiho

with that patch:

commit c17e06d5c0e456d3052a1b6de688956f87c59d3e
Author: Vitaliy Margolen <wine-patches at kievinfo.com>
Date:   Sun Dec 10 14:15:08 2006 -0700

    dinput: No need to copy default constant format. Use already defined static instead.

:100644 100644 c5a35a1... 369c26d... M  dlls/dinput/joystick_linuxinput.c

The game Richard Burns Rally does no longer get any events. The game
worked after some patches some month ago from me. As i had no intention
on that pages to make things right but to make the game work i might
have not picked the optimal solution. But this patches fixed all the
apps, that worked with their own DataFormat.

So the problem is like that:

The old code copied the default constant format and applied
caclulate_ids on it. So the dwTypes where set with proper
MAKEINSTANCE(...) calls. So an app, that requested later its own data
format with SetDataFormat using the data from EnumObjects. After the
change now the default const has ANY_INSTANCE all over the place but the
app request a certain instance - so on SetDataFormat there are no
matches.

So the big question is: is our SetDataFormat wrong or is this patch
wrong? Please advice.

-- 
cu
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 163 bytes
Desc: not available
Url : http://www.winehq.org/pipermail/wine-devel/attachments/20061220/46845869/attachment.pgp


More information about the wine-devel mailing list