https://bugs.winehq.org/show_bug.cgi?id=45536
Bug ID: 45536 Summary: Total Commander 9.x crashes on unimplemented function usp10.dll.ScriptGetFontAlternateGlyphs when Wine is not detected Product: Wine Version: 3.13 Hardware: x86-64 OS: Linux Status: NEW Severity: normal Priority: P2 Component: usp10 Assignee: wine-bugs@winehq.org Reporter: focht@gmx.net Distribution: ---
Hello folks,
while investigating bug 45514 (dupe of bug 42497) my Total Commander 9.x installation stopped working because I made 'wine_get_version' a '-noname' ordinal export (cheaper way, to avoid using Wine-Staging/patchset). The app no longer detects Wine and runs into a problem.
Download: https://totalcommander.ch/win/tcmd920x64.exe
--- snip --- $ pwd /home/focht/wineprefix64-tcmd/drive_c/totalcmd
$ file *.{DLL,EXE} TC7Z64.DLL: PE32+ executable (DLL) (GUI) x86-64, for MS Windows TCLZMA64.DLL: PE32+ executable (DLL) (GUI) x86-64, for MS Windows TCUNZL64.DLL: PE32+ executable (DLL) (GUI) x86-64, for MS Windows UNRAR64.DLL: PE32+ executable (DLL) (console) x86-64, for MS Windows WCMICON2.DLL: PE32 executable (DLL) (GUI) Intel 80386, for MS Windows WCMICONS.DLL: PE32 executable (GUI) Intel 80386, for MS Windows WCMZIP64.DLL: PE32+ executable (DLL) (GUI) x86-64, for MS Windows NOCLOSE64.EXE: PE32+ executable (GUI) x86-64, for MS Windows TCMADM64.EXE: PE32+ executable (GUI) x86-64, for MS Windows TCMDX32.EXE: PE32 executable (GUI) Intel 80386, for MS Windows TCUNIN64.EXE: PE32+ executable (GUI) x86-64, for MS Windows TOTALCMD64.EXE: PE32+ executable (GUI) x86-64, for MS Windows
$ WINEDEBUG=+seh,+relay wine TOTALCMD64.EXE >>log.txt 2>&1 ... 0030:Call KERNEL32.GetProcAddress(7bc80000,00a8a890 "wine_get_version") ret=00474dbb 0030:Ret KERNEL32.GetProcAddress() retval=00000000 ret=00474dbb ... 0030:Ret usp10.ScriptItemize() retval=00000000 ret=009f4047 0030:Call usp10.ScriptShape(00250258,00bd1bc0,01cb9768,00000001,00000010,00099634,02f35050,02f35090,02f350d0,0037693c) ret=009f40d1 ... 0030:Ret usp10.ScriptShape() retval=00000000 ret=009f40d1 0030:Call KERNEL32.RaiseException(80000100,00000001,00000002,01cb96a0) ret=7fe6fee5eb50 0030:trace:seh:NtRaiseException code=80000100 flags=1 addr=0x7b4944b9 ip=7b4944b9 tid=0030 0030:trace:seh:NtRaiseException info[0]=00007fe6fee5eb80 0030:trace:seh:NtRaiseException info[1]=00007fe6fee5eb95 wine: Call from 0x7b4944b9 to unimplemented function usp10.dll.ScriptGetFontAlternateGlyphs, aborting 0030:trace:seh:call_vectored_handlers calling handler at 0x419950 code=80000100 flags=1 ... --- snip ---
Source: https://source.winehq.org/git/wine.git/blob/HEAD:/dlls/usp10/usp10.spec#l9
--- snip --- 9 @ stub ScriptGetFontAlternateGlyphs --- snip ---
Microsoft docs:
https://docs.microsoft.com/en-us/windows/desktop/api/usp10/nf-usp10-scriptge...
$ sha1sum tcmd920x64.exe d27abd02fe60002cfb60b1c68888a666c48c9142 tcmd920x64.exe
$ du -sh tcmd920x64.exe 5.0M tcmd920x64.exe
$ wine --version wine-3.13
Regards