[Bug 10799] New: Myst Masterpiece Edition crashes at startup
http://bugs.winehq.org/show_bug.cgi?id=10799 Summary: Myst Masterpiece Edition crashes at startup Product: Wine Version: 0.9.49. Platform: PC OS/Version: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: wine-gdi-(printing) AssignedTo: wine-bugs(a)winehq.org ReportedBy: mateuscg(a)gmail.com Created an attachment (id=9662) --> (http://bugs.winehq.org/attachment.cgi?id=9662) Patch applied using "patch -p1 -R < patchfile" Beginning with wine version 0.9.49, Myst Masterpiece Edition crashes at startup. I identified the regression at this commit: http://www.winehq.org/pipermail/wine-cvs/2007-November/037630.html After I undo some of the changes at ChangeDisplaySettingsExA @ dlls/user32/sysparams.c to not call GdiConvertToDevmodeW, as 0.9.48 and before, Myst worked again. Attached are the wine debugger output and the patch I applied using "patch -p1 -R < patchfile". -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=10799 --- Comment #1 from Mateus César Gröess <mateuscg(a)gmail.com> 2007-12-16 16:41:36 --- Created an attachment (id=9663) --> (http://bugs.winehq.org/attachment.cgi?id=9663) Debugger output (back traces, etc) -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=10799 Dan Kegel <dank(a)kegel.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |dank(a)kegel.com Keywords| |regression --- Comment #2 from Dan Kegel <dank(a)kegel.com> 2007-12-16 17:48:20 --- Gee, I wish all bug reports came with the culprit so nicely identified! -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=10799 --- Comment #3 from Dmitry Timoshkov <dmitry(a)codeweavers.com> 2007-12-16 23:20:10 --- Please retest with 0.9.51, some bugs related to resolution changes have been fixed since then. -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=10799 --- Comment #4 from Mateus César Gröess <mateuscg(a)gmail.com> 2007-12-17 07:15:24 --- The debugger output attached was taken using 0.9.51, I forgot to mention. I was confused and set version 0.9.49 for the report because the problem first happened with it, but happens also with 0.9.50/0.9.51 in the same form. Unfortunally a demo of this game was not found. If somebody find one, please tell me where it can be downloaded. The game runs on wine with a sound-related problem and I would like to report it, but I need a link to a demo to provide a way to people test. From what I remember, the game does not work with versions newer than Windows 98, at least without patches, so I set wine to Windows 98. Instalation of QuickTime Player is required. I installed the version contained in the same CD-ROM (version 4.5 I guess). Myst switches to fullscreen at startup. When it crashes, I can see an empty window. Maybe the game first creates it just before goes to fullscreen. -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=10799 --- Comment #5 from Dmitry Timoshkov <dmitry(a)codeweavers.com> 2007-12-17 07:25:24 --- Are you using a desktop mode by any chance? Also, could you (re)move ~/.wine and install the app again? -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=10799 --- Comment #6 from Mateus César Gröess <mateuscg(a)gmail.com> 2007-12-17 08:20:54 ---
Are you using a desktop mode by any chance?
No, default settings. I just disable vertex and pixel shader, because my ancient Voodoo 3 does not support them.
Also, could you (re)move ~/.wine and install the app again?
I always remove .wine before testing. -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=10799 Dmitry Timoshkov <dmitry(a)codeweavers.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |dmitry(a)codeweavers.com --- Comment #7 from Dmitry Timoshkov <dmitry(a)codeweavers.com> 2007-12-17 09:18:25 --- How large is a 'bzip -9'ed +relay,+seh,+tid log? If it's under 2Mb please attach it to the bug. -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=10799 --- Comment #8 from Mateus César Gröess <mateuscg(a)gmail.com> 2007-12-17 19:14:05 --- Created an attachment (id=9676) --> (http://bugs.winehq.org/attachment.cgi?id=9676) Output of "WINEDEBUG=+relay,+seh,+tid wine .wine/drive_c/Program\ Files/Red\ Orb/Myst\ Masterpiece\ Edition/Myst.exe" -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=10799 --- Comment #9 from Dmitry Timoshkov <dmitry(a)codeweavers.com> 2007-12-17 22:26:25 --- Created an attachment (id=9679) --> (http://bugs.winehq.org/attachment.cgi?id=9679) A probable fix Does the attached patch help? -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=10799 --- Comment #10 from Dmitry Timoshkov <dmitry(a)codeweavers.com> 2007-12-18 04:41:54 --- After looking at the backtrace again I think that the patch won't fix this particular crash. -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=10799 --- Comment #11 from Dmitry Timoshkov <dmitry(a)codeweavers.com> 2007-12-18 06:22:49 --- The following patch should fix the problem: http://www.winehq.org/pipermail/wine-patches/2007-December/048097.html -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=10799 --- Comment #12 from Dmitry Timoshkov <dmitry(a)codeweavers.com> 2007-12-18 08:29:50 --- The patch has been committed, please retest and close the bug if appropriate. -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=10799 --- Comment #13 from Mateus César Gröess <mateuscg(a)gmail.com> 2007-12-18 18:54:59 --- I saw your comments at my job, but couldn't test. I just tested and the problem is still present. Does the patch need another to be also applied? I applied only your commited patch against version 0.9.51, because I don't have a local git tree actually. I always remove the source files and re-extract them from tar.bz2 before compiling. Actually, I have a Slackware Linux and use a slightly modified version of this script to build package: http://repository.slacky.eu/slackware-12.0/utilities/wine/0.9.51/src/. Looking at backtrace, seems to be the same cause: Backtrace: =>1 0xb7d4655f memcpy+0x2f() in libc.so.6 (0x0031a370) 2 0x7e993893 GdiConvertToDevmodeW+0xcd(dmA=0xac1c3c) [/tmp/tgz/wine-0.9.51/dlls/gdi32/driver.c:430] in gdi32 (0x0031a3a0) 3 0x7eab2cc5 ChangeDisplaySettingsExA+0x45(devname=0x0, devmode=0xac1c3c, hwnd=0x0, flags=0x0, lparam=0x0) [/tmp/tgz/wine-0.9.51/dlls/user32/sysparams.c:3001] in user32 (0x0031a3e0) 4 0x7eab2c45 ChangeDisplaySettingsA+0x27(devmode=0xac1c3c, flags=0x0) [/tmp/tgz/wine-0.9.51/dlls/user32/sysparams.c:2972] in user32 (0x0031a410) 5 0x0042a433 in myst (+0x2a433) (0x0031a428) 6 0x0042ab3f in myst (+0x2ab3f) (0x0031a490) 7 0x00444d51 in myst (+0x44d51) (0x0031a758) Because of my daily job I can only make tests at nights. Coincidently someone else post a message at wine-devel reporting the same problems I have with this game. I don't replied because I'm not subscribed, maybe I'll try e-mail the guy. -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=10799 --- Comment #14 from Dmitry Timoshkov <dmitry(a)codeweavers.com> 2007-12-18 21:45:55 --- Ah, now I see a possible problem. The following patch should fix an attempt to read beyond the end of the passed in buffer: http://www.winehq.org/pipermail/wine-patches/2007-December/048125.html -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=10799 --- Comment #15 from Dmitry Timoshkov <dmitry(a)codeweavers.com> 2007-12-19 07:21:35 --- The patch was committed. Please retest and close if appropriate. -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=10799 --- Comment #16 from Mateus César Gröess <mateuscg(a)gmail.com> 2007-12-19 19:22:39 --- I don't want to disappoint you, but the problem is still present. I applied your first commited patch and after the second patch, against version 0.9.51. Based on you changes, I made some additions using the old printf debug method. Here is the patch I tried: --- driver.c-orig 2007-12-17 15:28:47.000000000 -0200 +++ driver.c 2007-12-17 16:57:11.000000000 -0200 @@ -413,19 +413,29 @@ DEVMODEW *dmW; WORD dmW_size, dmA_size; + printf("dmA value: %X\n", dmA); + printf("dmA->dmSize value: %d\n", dmA->dmSize); + printf("sizeof(DEVMODEA) value: %d\n", sizeof(DEVMODEA)); dmA_size = dmA->dmSize; if (dmA_size > sizeof(DEVMODEA)) dmA_size = sizeof(DEVMODEA); + printf("dmA_size 2 value: %d\n", dmA_size); dmW_size = dmA_size + CCHDEVICENAME; + printf("dmW_size value: %d\n", dmW_size); if (dmA_size >= FIELD_OFFSET(DEVMODEA, dmFormName) + CCHFORMNAME) dmW_size += CCHFORMNAME; + printf("dmW_size 2 value: %d\n", dmW_size); dmW = HeapAlloc(GetProcessHeap(), 0, dmW_size + dmA->dmDriverExtra); if (!dmW) return NULL; + printf("dmW value: %X\n", dmW); MultiByteToWideChar(CP_ACP, 0, (const char*) dmA->dmDeviceName, CCHDEVICENAME, dmW->dmDeviceName, CCHDEVICENAME); + printf("dmW->dmSpecVersion value: %d\n", dmW->dmSpecVersion); + printf("dmA->dmSpecVersion value: %d\n", dmA->dmSpecVersion); + printf("dmA_size value: %d\n", dmA_size); /* copy slightly more, to avoid long computations */ memcpy(&dmW->dmSpecVersion, &dmA->dmSpecVersion, dmA_size - CCHDEVICENAME); The results: dmA value: AC1C3C dmA->dmSize value: 0 sizeof(DEVMODEA) value: 156 dmA_size 2 value: 0 dmW_size value: 32 dmW_size 2 value: 32 dmW value: 1410B8 dmW->dmSpecVersion value: 74 dmA->dmSpecVersion value: 0 dmA_size value: 0 wine: Unhandled page fault on read access to 0x00acc000 at address 0xb7ce455f (thread 001b), starting debugger... <snip...> Backtrace: =>1 0xb7ce455f memcpy+0x2f() in libc.so.6 (0x0031a370) 2 0x7e99399b GdiConvertToDevmodeW+0x1d5(dmA=0xac1c3c) [/tmp/tgz/wine-0.9.51/dlls/gdi32/driver.c:440] in gdi32 (0x0031a3a0) 3 0x7eab2cc5 ChangeDisplaySettingsExA+0x45(devname=0x0, devmode=0xac1c3c, hwnd=0x0, flags=0x0, lparam=0x0) [/tmp/tgz/wine-0.9.51/dlls/user32/sysparams.c:3001] in user32 (0x0031a3e0) 4 0x7eab2c45 ChangeDisplaySettingsA+0x27(devmode=0xac1c3c, flags=0x0) [/tmp/tgz/wine-0.9.51/dlls/user32/sysparams.c:2972] in user32 (0x0031a410) 5 0x0042a433 in myst (+0x2a433) (0x0031a428) 6 0x0042ab3f in myst (+0x2ab3f) (0x0031a490) -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=10799 --- Comment #17 from Dmitry Timoshkov <dmitry(a)codeweavers.com> 2007-12-19 22:39:36 ---
dmA value: AC1C3C dmA->dmSize value: 0
dmA->dmSize being 0 is the source of the problem. XP crashes as well in that case in my test. This needs an investigation. -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=10799 --- Comment #18 from Dmitry Timoshkov <dmitry(a)codeweavers.com> 2007-12-19 22:49:29 --- Actually that's my test who crashes, GdiConvertToDevmodeW in XP just returns NULL in that case. I'll send a patch. -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=10799 --- Comment #19 from Dmitry Timoshkov <dmitry(a)codeweavers.com> 2007-12-20 00:51:58 --- The following 2 patches should fix the crash: http://www.winehq.org/pipermail/wine-patches/2007-December/048168.html http://www.winehq.org/pipermail/wine-patches/2007-December/048169.html -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=10799 --- Comment #20 from Dmitry Timoshkov <dmitry(a)codeweavers.com> 2007-12-20 06:43:06 --- Alexandre committed the patches, please retest. And many thanks for the help. -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=10799 Mateus César Gröess <mateuscg(a)gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution| |FIXED --- Comment #21 from Mateus César Gröess <mateuscg(a)gmail.com> 2007-12-20 17:55:22 --- The regression is fixed! Thank you very much, Dmitry. -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=10799 Dan Kegel <dank(a)kegel.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED --- Comment #22 from Dan Kegel <dank(a)kegel.com> 2008-01-28 05:43:20 --- Closing all RESOLVED FIXED bugs older than four weeks. -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email Do not reply to this email, post in Bugzilla using the above URL to reply. ------- You are receiving this mail because: ------- You are watching all bug changes.
participants (1)
-
wine-bugs@winehq.org