https://bugs.winehq.org/show_bug.cgi?id=43369
--- Comment #1 from Sagawa sagawa.aki+winebugs@gmail.com --- Created attachment 58738 --> https://bugs.winehq.org/attachment.cgi?id=58738 proposed patch
I found out the reason of this issue is GetDeviceCaps(VREFRESH) is hard-coded to zero.
0x00439df1: pushl $0x74 ; VREFRESH 0x00439df3: pushl %edi ; result of GetDC() 0x00439df4: call *0x5b7064 -> 0x7ea12430 GetDeviceCaps [/home/sagawa/wine-git/dlls/gdi32/dc.c:877] in gdi32 0x00439dfa: movl 0x00cc55f4,%edx 0x00439e00: pushl %edi 0x00439e01: pushl %edx 0x00439e02: movl %eax,%esi 0x00439e04: call *0x5b7424 -> 0x7eb9ed90 ReleaseDC [/home/sagawa/wine-git/dlls/user32/painting.c:1107] in user32 0x00439e0a: movl $0x3e8,%eax 0x00439e0f: cdq 0x00439e10: idivl %esi,%eax ; <- ***Crash****
The attachment is a proposed patch which returns one instead of zero for GetDeviceCaps(VREFRESH) for display devices.