http://bugs.winehq.org/show_bug.cgi?id=19505
Summary: Cannot run AMIS (Daisy Book Reader) Product: Wine Version: 1.1.23 Platform: PC OS/Version: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown AssignedTo: wine-bugs@winehq.org ReportedBy: jvromans@squirrel.nl
Created an attachment (id=22688) --> (http://bugs.winehq.org/attachment.cgi?id=22688) Wine log when starting AMIS
When trying to run AMIS, the program aborts almost immediately. AMIS can be downloaded from http://daisy.org/projects/amis/ .
http://bugs.winehq.org/show_bug.cgi?id=19505
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download
http://bugs.winehq.org/show_bug.cgi?id=19505
--- Comment #1 from Andrew Nguyen arethusa26@gmail.com 2009-07-29 16:27:28 --- Created an attachment (id=22691) --> (http://bugs.winehq.org/attachment.cgi?id=22691) AMIS +menu,+relay,+seh,+tid trace (lzma compressed)
I can confirm that the application fails to start with wine-1.1.26-231-gfe9d360. I noticed that the application tries to query for a Speech API interface, which I resolved by installing the SAPI SDK with Windows version set at Windows 2000 and then restoring the Windows version to Windows XP. The next issue that the application runs into seems to be an issue with menu handling. Prior to the latest crash, the relay log shows:
0009:Call user32.GetSubMenu(000000a0,00000003) ret=00415bd0 0009:Ret user32.GetSubMenu() retval=00000000 ret=00415bd0
I've attached a +menu,+relay,+seh,+tid trace.
http://bugs.winehq.org/show_bug.cgi?id=19505
--- Comment #2 from Rein Klazes wijn@online.nl 2009-07-30 05:40:20 --- (In reply to comment #1)
It is a problem with mdi menus. The app apparently does not like that the system inserts a system menu as the first item of a mdi-child menu.
With some happy hacking:
diff --git a/dlls/user32/mdi.c b/dlls/user32/mdi.c index 7e017b0..ac9a339 100644 --- a/dlls/user32/mdi.c +++ b/dlls/user32/mdi.c @@ -896,7 +896,7 @@ static BOOL MDI_AugmentFrameMenu( HWND frame, HWND hChild ) hSysMenuBitmap = hBitmap; } } - +#if 0 if( !InsertMenuA(menu,0,MF_BYPOSITION | MF_BITMAP | MF_POPUP, (UINT_PTR)hSysPopup, (LPSTR)hSysMenuBitmap)) { @@ -904,6 +904,7 @@ static BOOL MDI_AugmentFrameMenu( HWND frame, HWND hChild ) DestroyMenu(hSysPopup); return 0; } +#endif
EnableMenuItem(hSysPopup, SC_SIZE, MF_BYCOMMAND | MF_GRAYED); EnableMenuItem(hSysPopup, SC_MOVE, MF_BYCOMMAND | MF_GRAYED); @@ -944,6 +945,7 @@ static BOOL MDI_RestoreFrameMenu( HWND frame, HWND hChild ) menuInfo.cbSize = sizeof(menuInfo); menuInfo.fMask = MIIM_DATA | MIIM_TYPE;
+#if 0 GetMenuItemInfoW(menu, 0, TRUE, @@ -957,6 +959,7 @@ static BOOL MDI_RestoreFrameMenu( HWND frame, HWND hChild ) { DeleteObject(HBITMAP_32(LOWORD(menuInfo.dwTypeData))); } +#endif
/* close */ DeleteMenu(menu, SC_CLOSE, MF_BYCOMMAND);
the app proceeds much further, and crashes in quartz. Back trace in a moment.
http://bugs.winehq.org/show_bug.cgi?id=19505
--- Comment #3 from Rein Klazes wijn@online.nl 2009-07-30 05:42:57 --- Created an attachment (id=22699) --> (http://bugs.winehq.org/attachment.cgi?id=22699) terminal output with the "no system menu in mdi child" hack.
http://bugs.winehq.org/show_bug.cgi?id=19505
Ken Sharp kennybobs@o2.co.uk changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW URL| |http://daisy.org/projects/a | |mis/Setup-amis30-U.S.Englis | |h.zip Ever Confirmed|0 |1
--- Comment #4 from Ken Sharp kennybobs@o2.co.uk 2009-07-31 10:27:08 --- Confirming as per above.
http://bugs.winehq.org/show_bug.cgi?id=19505
--- Comment #5 from Johan Vromans jvromans@squirrel.nl 2009-08-01 02:46:38 --- Can we take advantage of the fact that AMIS is an open source app? It would be *very* nice if there was at least one good daisy reader available through wine. Visually handicapped Linux users will be grateful, my wife being one of them.
http://bugs.winehq.org/show_bug.cgi?id=19505
Jeff Zaroyko jeffz@jeffz.name changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |source
http://bugs.winehq.org/show_bug.cgi?id=19505
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- URL|http://daisy.org/projects/a |http://www.daisy.org/projec |mis/Setup-amis30-U.S.Englis |ts/amis/downloads/Setup-ami |h.zip |s31-U.S.English.exe Component|-unknown |user32
--- Comment #6 from Austin English austinenglish@gmail.com 2011-08-12 19:28:52 CDT --- Using: http://www.daisy.org/projects/amis/downloads/Setup-amis31-U.S.English.exe cffae111b1f59c7c442d294a39c5c566fff0aaa6 Setup-amis31-U.S.English.exe
problem is still in 1.3.26. Installing the speech sdk and rediffing the patch from comment #2 works around it (and no longer crashes in quartz).
http://bugs.winehq.org/show_bug.cgi?id=19505
--- Comment #7 from Austin English austinenglish@gmail.com 2011-08-12 19:29:21 CDT --- Created an attachment (id=35937) --> (http://bugs.winehq.org/attachment.cgi?id=35937) hack
http://bugs.winehq.org/show_bug.cgi?id=19505
--- Comment #8 from Austin English austinenglish@gmail.com --- (In reply to comment #6)
Still in wine-1.7.11-114-g6f498c4. The hack gets it a bit further, but it then crashes shortly after putting up a GUI.
http://bugs.winehq.org/show_bug.cgi?id=19505
hanska2@luukku.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |hanska2@luukku.com
--- Comment #9 from hanska2@luukku.com --- Not Found
The requested URL "/projects/amis/downloads/Setup-amis31-U.S.English.exe" was not found on this server.
http://bugs.winehq.org/show_bug.cgi?id=19505
--- Comment #10 from Johan Vromans jvromans@squirrel.nl --- http://www.daisy.org/amis/download
http://bugs.winehq.org/show_bug.cgi?id=19505
--- Comment #11 from hanska2@luukku.com --- Created attachment 49238 --> http://bugs.winehq.org/attachment.cgi?id=49238 wine 1.7.22 crash
http://bugs.winehq.org/show_bug.cgi?id=19505
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |debian@carbon-project.org
--- Comment #12 from Anastasius Focht focht@gmx.net --- *** Bug 24597 has been marked as a duplicate of this bug. ***
http://bugs.winehq.org/show_bug.cgi?id=19505
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |focht@gmx.net Summary|Cannot run AMIS (Daisy Book |Multiple MDI-based |Reader) |applications crash on | |startup due to insertion of | |system menu into MDI frame | |menu (AMIS Daisy Book | |Reader, EEP 5)
--- Comment #13 from Anastasius Focht focht@gmx.net --- Hello folks,
refining summary to collect dupes here.
Regards
https://bugs.winehq.org/show_bug.cgi?id=19505
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |oebbler@live.de
--- Comment #14 from Anastasius Focht focht@gmx.net --- *** Bug 38965 has been marked as a duplicate of this bug. ***
https://bugs.winehq.org/show_bug.cgi?id=19505
Béla Gyebrószki gyebro69@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |gyebro69@gmail.com
https://bugs.winehq.org/show_bug.cgi?id=19505
super_man@post.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |super_man@post.com
--- Comment #15 from super_man@post.com --- Hack applies against 1.9.8-git so its possible to test other bugs against it and find possible duplicates.
https://bugs.winehq.org/show_bug.cgi?id=19505
winetest@luukku.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |winetest@luukku.com
--- Comment #16 from winetest@luukku.com --- Crashes both wine 2.2-git and staging 2.1.
https://bugs.winehq.org/show_bug.cgi?id=19505
--- Comment #17 from Anastasius Focht focht@gmx.net --- Hello folks,
revisiting, likely still present.
$ wine --version wine-3.6-138-ga373054b72
Regards
https://bugs.winehq.org/show_bug.cgi?id=19505
tokktokk fdsfgs@krutt.org changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |fdsfgs@krutt.org
https://bugs.winehq.org/show_bug.cgi?id=19505
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- URL|http://www.daisy.org/projec |https://web.archive.org/web |ts/amis/downloads/Setup-ami |/20200413100541/https://dl. |s31-U.S.English.exe |daisy.org/tools/Amis/Setup- | |amis-U.S.English.exe Keywords|source |
--- Comment #18 from Anastasius Focht focht@gmx.net --- Hello folks,
revisiting, obviously still present.
Adding stable links via Internet Archive since original ones are broken.
BTW: https://daisy.org/info-help/document-archive/archived-projects/
--- quote --- The following projects are no longer under active development but all archived information is available for our readers. --- quote ---
https://web.archive.org/web/20200413100541/https://dl.daisy.org/tools/Amis/S...
$ sha1sum Setup-amis-U.S.English.exe db8fd29b4ec1f118c3defc25bd79a8d162e30f51 Setup-amis-U.S.English.exe
$ du -sh Setup-amis-U.S.English.exe 16M Setup-amis-U.S.English.exe
---
Eisenbahn.exe Pro 5 (EEP 5) train simulator from bug 24597
https://web.archive.org/web/20200413100731/http://dl.cdn.chip.de/downloads/3...
$ sha1sum eep5_demo.exe 41d02784946d11451889bd0fea7ab9f3c82c6aaf eep5_demo.exe
$ du -sh eep5_demo.exe 197M eep5_demo.exe
---
$ wine --version wine-5.6
Regards
https://bugs.winehq.org/show_bug.cgi?id=19505
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|Multiple MDI-based |Multiple MDI-based |applications crash on |applications crash on |startup due to insertion of |startup due to insertion of |system menu into MDI frame |system menu into MDI frame |menu (AMIS Daisy Book |menu (AMIS Daisy Book |Reader, EEP 5) |Reader, EEP v5-v16 - | |Eisenbahn.exe)
--- Comment #19 from Anastasius Focht focht@gmx.net --- Hello folks,
revisiting, still present. I encountered this problem again while investigating a crash related to the DRM scheme of EEP 14.0 - Eisenbahn.exe (Basic-Version) with mainline Wine.
https://store.steampowered.com/app/722190/EEP_14/
It was 2,39 EUR on Steam = cheap enough for one debug session so I looked into it. This bug is a follow-up to the DRM problem.
Adjusting the summary accordingly. It's likely present even with latest EEP 16.
--- snip --- $ pwd /home/focht/wine-games/wineprefix64-steam/drive_c/Program Files (x86)/Steam
$ WINEDEBUG=+pid,+seh,+relay wine ./steam.exe \ -no-cef-sandbox -applaunch 722190 >>log_ 2>&1 ... 041c:0420:Call window proc 0000000008DEE6A0 (hwnd=00000000000202FA,msg=WM_GETTEXT,wp=00000100,lp=0021c910) ... 041c:0420:Call user32.DefMDIChildProcA(000202fa,0000000d,00000100,0021c910) ret=08f5f1b2 041c:0420:Ret user32.DefMDIChildProcA() retval=00000000 ret=08f5f1b2 041c:0420:Ret window proc 0000000008DEE6A0 (hwnd=00000000000202FA,msg=WM_GETTEXT,wp=00000100,lp=0021c910) retval=00000000 041c:0420:Ret user32.GetWindowTextA() retval=00000000 ret=08f83457 041c:0420:Call KERNEL32.lstrcmpA(0021c910 "",0021ca70 "") ret=08f83469 ... 041c:0420:Ret KERNEL32.lstrcmpA() retval=00000000 ret=08f83469 041c:0420:Call user32.GetWindowRect(000102dc,0021ec70) ret=1401f7cb1 041c:0420:Ret user32.GetWindowRect() retval=00000001 ret=1401f7cb1 ... 041c:0420:Call user32.GetMenu(000102dc) ret=08f74aa9 041c:0420:Ret user32.GetMenu() retval=00010250 ret=08f74aa9 ... 041c:0420:Call user32.ModifyMenuA(00010250,00000000,00000400,00000000,140967100) ret=1401e9fe9 ... 041c:0420:Call ntdll.strlen(140967100 "&File") ret=7b027564 041c:0420:Ret ntdll.strlen() retval=00000005 ret=7b027564 041c:0420:Ret user32.ModifyMenuA() retval=00000001 ret=1401e9fe9 ... 041c:0420:Call user32.GetMenu(000102dc) ret=08f74aa9 041c:0420:Ret user32.GetMenu() retval=00010250 ret=08f74aa9 ... 041c:0420:Call user32.ModifyMenuA(00010250,00000001,00000400,00000001,140967100) ret=1401ea02c ... 041c:0420:Call ntdll.strlen(140967100 "&Insert") ret=7b027564 041c:0420:Ret ntdll.strlen() retval=00000007 ret=7b027564 041c:0420:Ret user32.ModifyMenuA() retval=00000001 ret=1401ea02c ... 041c:0420:Call user32.GetMenu(000102dc) ret=08f74aa9 041c:0420:Ret user32.GetMenu() retval=00010250 ret=08f74aa9 ... 041c:0420:Call user32.ModifyMenuA(00010250,00000002,00000400,00000002,140967100) ret=1401ea06f ... 041c:0420:Call ntdll.strlen(140967100 "&View") ret=7b027564 041c:0420:Ret ntdll.strlen() retval=00000005 ret=7b027564 041c:0420:Ret user32.ModifyMenuA() retval=00000001 ret=1401ea06f ... 041c:0420:Call user32.GetMenu(000102dc) ret=08f74aa9 041c:0420:Ret user32.GetMenu() retval=00010250 ret=08f74aa9 ... 041c:0420:Call user32.GetSubMenu(00010250,00000002) ret=1401ea0b0 041c:0420:Ret user32.GetSubMenu() retval=00010254 ret=1401ea0b0 ... 041c:0420:Call user32.ModifyMenuA(00010254,0000000a,00000400,00008fea,00dc51b8) ret=1401ea0e6 ... 041c:0420:Call ntdll.strlen(00dc51b8 "View 2D window") ret=7b027564 041c:0420:Ret ntdll.strlen() retval=0000000e ret=7b027564 041c:0420:Ret user32.ModifyMenuA() retval=00000000 ret=1401ea0e6 041c:0420:Call user32.GetMenu(000102dc) ret=08f74aa9 041c:0420:Ret user32.GetMenu() retval=00010250 ret=08f74aa9 ... 041c:0420:Call user32.GetSubMenu(00010250,00000002) ret=1401ea102 041c:0420:Ret user32.GetSubMenu() retval=00010254 ret=1401ea102 ... 041c:0420:Call user32.GetSubMenu(00010254,0000000a) ret=1401ea119 041c:0420:Ret user32.GetSubMenu() retval=00000000 ret=1401ea119 ... 041c:0420:Call ucrtbase.memcmp(00e9d670,140658f88,0000000d) ret=14023d977 041c:0420:Ret ucrtbase.memcmp() retval=00000000 ret=14023d977 041c:0420:Call ucrtbase.memcmp(00e9e8f0,140659118,0000000b) ret=14023da77 041c:0420:Ret ucrtbase.memcmp() retval=00000000 ret=14023da77 041c:0420:trace:seh:dispatch_exception code=c0000005 flags=0 addr=00000001401EA14A ip=00000001401EA14A tid=0420 041c:0420:trace:seh:dispatch_exception info[0]=0000000000000000 041c:0420:trace:seh:dispatch_exception info[1]=0000000000000008 041c:0420:warn:seh:dispatch_exception EXCEPTION_ACCESS_VIOLATION exception (code=c0000005) raised 041c:0420:trace:seh:dispatch_exception rax=0000000040967100 rbx=000000004082fc80 rcx=0000000000000000 rdx=0000000000000000 041c:0420:trace:seh:dispatch_exception rsi=000000004082fc80 rdi=0000000000000000 rbp=0000000040000000 rsp=000000000021cec0 041c:0420:trace:seh:dispatch_exception r8=0000000000000400 r9=0000000000000000 r10=000000000021c8c5 r11=0000000000000000 041c:0420:trace:seh:dispatch_exception r12=000000000cdcacf0 r13=00000000ffffffff r14=0000000000000000 r15=0000000000000001 041c:0420:trace:seh:call_vectored_handlers calling handler at 000000007B011FE0 code=c0000005 flags=0 041c:0420:trace:seh:call_vectored_handlers handler at 000000007B011FE0 returned 0 ... 041c:0420:trace:seh:call_handler calling handler 00000001405C1FE7 (rec=00000000001245A0, frame=000000000021FD70 context=0000000000123B90, dispatch=0000000000123A58) 041c:0420:Call ntdll.__C_specific_handler(001245a0,0021fd70,001240b0,00123a58) ret=7bc52686 041c:0420:trace:seh:__C_specific_handler 00000000001245A0 000000000021FD70 00000000001240B0 0000000000123A58 041c:0420:trace:seh:dump_scope_table scope table at 0000000140798550 041c:0420:trace:seh:dump_scope_table 0: 00000001405193C8-00000001405194D0 handler 0000000140600986 target 00000001405194D0 041c:0420:trace:seh:dump_scope_table 1: 00000001405194FF-0000000140519511 handler 0000000140600986 target 00000001405194D0 041c:0420:trace:seh:__C_specific_handler calling filter 0000000140600986 ptrs 0000000000123938 frame 000000000021FD70 041c:0420:Call ucrtbase._seh_filter_exe(c0000005,00123938) ret=14060099c 041c:0420:trace:seh:_XcptFilter (c0000005,0000000000123938) 041c:0420:Ret ucrtbase._seh_filter_exe() retval=00000000 ret=14060099c 041c:0420:Ret ntdll.__C_specific_handler() retval=00000001 ret=7bc52686 041c:0420:trace:seh:call_handler handler at 00000001405C1FE7 returned 1 041c:0420:trace:seh:RtlVirtualUnwind type 1 rip 000000007B62A009 rsp 000000000021FDB0 ... 041c:0420:err:virtual:virtual_setup_exception stack overflow 2000 bytes in thread 0420 addr 0x7bc521fd stack 0x120830 (0x120000-0x121000-0x220000) 0420: *killed* exit_code=0 --- snip ---
The 64-bit versions of the game will end up with stack overflow during unwinding. The old 32-bit versions of the game trigger the crash reporter.
Most likely related:
https://github.com/ValveSoftware/Proton/issues/3031
As already mentioned, there is a preceding crash with mainline Wine in the DRM scheme of EEP, related to the process memory organization. It's not encountered with Wine-Staging and derivative projects (Proton et al). I will probably create an extra bug later instead of commenting in messed up threads. On the other hand there is Janrupf (from the Proton issue) trying out x64dbg after getting a helping hand of mine on IRC. Maybe I wait a bit to not spoil the fun/challenge for him - it's not that hard to figure out ;-)
$ wine --version wine-6.2
Regards
https://bugs.winehq.org/show_bug.cgi?id=19505
temp82@luukku.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |temp82@luukku.com
--- Comment #20 from temp82@luukku.com --- still valid as wine 7.13.
https://bugs.winehq.org/show_bug.cgi?id=19505
--- Comment #21 from temp82@luukku.com --- still crashes wine 8.2