[Bug 10799] Myst Masterpiece Edition crashes at startup
wine-bugs at winehq.org
wine-bugs at winehq.org
Wed Dec 19 19:22:40 CST 2007
http://bugs.winehq.org/show_bug.cgi?id=10799
--- Comment #16 from Mateus César Gröess <mateuscg at 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.
More information about the wine-bugs
mailing list