Am Montag, den 12.10.2009, 02:01 +0900 schrieb Dmitry Timoshkov:
I have compiled the test alone and it fails here:
ddrawmodes.c:37: Test failed: DDDEVICEIDENTIFIER2 too large (misaligned)
It's natural that the structure is 8-byte aligned since it has a 64-bit member (LARGE_INTEGER). ddraw.h in PSDK doesn't have any forced packing either.
Thanks for the help. But what about older applications/compilers that determined the size to be 4 bytes less and therefore reserved not enough stack space for the result structure. At least http://bugs.winehq.org/show_bug.cgi?id=12869 fails because of this.
Should a patch better fix the copy behaviour of GetDeviceIdentifier()?