https://bugs.winehq.org/show_bug.cgi?id=43369
Bug ID: 43369 Summary: Nora, Princess and Stray cat (demo): fails to run (division by zero) Product: Wine Version: 2.12 Hardware: x86-64 URL: https://1drv.ms/u/s!Avo02wg9265yi6V1KMqDZF4s0LfCrA OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: gdi32 Assignee: wine-bugs@winehq.org Reporter: sagawa.aki+winebugs@gmail.com Distribution: Ubuntu
Created attachment 58737 --> https://bugs.winehq.org/attachment.cgi?id=58737 backtrace.txt
A demo version of Nora, Princess and Stray cat (ノラと皇女と野良猫ハート体験版) fails to run after start-up configuration (起動設定) window.
Console output shows "Unhandled exception: divide by zero in 32-bit code (0x00439e10)". See the attachment for details.
https://bugs.winehq.org/show_bug.cgi?id=43369
Sagawa sagawa.aki+winebugs@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download
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.
https://bugs.winehq.org/show_bug.cgi?id=43369
Sagawa sagawa.aki+winebugs@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |patch
https://bugs.winehq.org/show_bug.cgi?id=43369
Fabian Maurer dark.shadow4@web.de changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |dark.shadow4@web.de
https://bugs.winehq.org/show_bug.cgi?id=43369
Sagawa sagawa.aki+winebugs@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Fixed by SHA1| |22135ba583f2881d16b9370aa6d | |e7513bbc59f10 Resolution|--- |FIXED Status|UNCONFIRMED |RESOLVED
--- Comment #2 from Sagawa sagawa.aki+winebugs@gmail.com --- The patch is committed.
https://bugs.winehq.org/show_bug.cgi?id=43369
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #3 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 2.14.
https://bugs.winehq.org/show_bug.cgi?id=43369
Michael Stefaniuc mstefani@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|--- |2.0.x
https://bugs.winehq.org/show_bug.cgi?id=43369
Michael Stefaniuc mstefani@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|2.0.x |--- CC| |mstefani@winehq.org
--- Comment #4 from Michael Stefaniuc mstefani@winehq.org --- Removing 2.0.x target milestone: While the commit itself is easy to backport it is a no-op without previous changes to the nulldrv. And those are too risky for Stable.