https://bugs.winehq.org/show_bug.cgi?id=45400
Bug ID: 45400 Summary: eden* (VN) some font characters display with the wrong glyph (capitals/spaces) Product: Wine Version: 3.11 Hardware: x86 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown Assignee: wine-bugs@winehq.org Reporter: kq3thih@mailnesia.com Distribution: ---
Created attachment 61710 --> https://bugs.winehq.org/attachment.cgi?id=61710 +font,+nls,+relay - 36.4M
eden*, GOG version (all ages/17+), some font characters display with the wrong glyph. Often capital letters and/or spaces. To reproduce start eden_en.exe, and click Settings or start a new game.
Merriweather MG font is installed along with the game. When chosen as the font to use the broken characters display as the first non-unicode glyph in Merriweather MG, box with an X inside named ".notdef" according to FontForge.
From the attached +font,+nls,+relay log.
A wrong glyph: --- snip --- 002b:Call KERNEL32.MultiByteToWideChar(000004e4,00000001,0033f644 "l",00000001,0033f640,00000001) ret=0051a005 002b:trace:nls:MultiByteToWideChar cp 1252 "l" -> L"l", ret = 1 002b:Ret KERNEL32.MultiByteToWideChar() retval=00000001 ret=0051a005 002b:Call gdi32.GetGlyphOutlineW(0037005b,0037006c,00000005,00d0e770,00000000,009a2ad8,005671d0) ret=0051a053 002b:trace:font:GetGlyphOutlineW (0x37005b, 37006c, 0005, 0xd0e770, 0, 0x9a2ad8, 0x5671d0) 002b:trace:font:get_glyph_outline 0x1c2570, 37006c, 00000005, 0xd0e770, 00000000, 0x9a2ad8, 0x5671d0 002b:trace:font:get_glyph_outline font transform 1.000000 0.000000 0.000000 1.000000 002b:trace:font:get_glyph_outline 10,11,(0,12),10,0 002b:Ret gdi32.GetGlyphOutlineW() retval=00000084 ret=0051a053 002b:Call gdi32.GetGlyphOutlineW(0037005b,0037006c,00000005,00d0e770,00000084,009a2ad8,005671d0) ret=0051a161 002b:trace:font:GetGlyphOutlineW (0x37005b, 37006c, 0005, 0xd0e770, 132, 0x9a2ad8, 0x5671d0) 002b:trace:font:get_glyph_outline 0x1c2570, 37006c, 00000005, 0xd0e770, 00000084, 0x9a2ad8, 0x5671d0 002b:trace:font:get_glyph_outline font transform 1.000000 0.000000 0.000000 1.000000 002b:trace:font:get_glyph_outline 10,11,(0,12),10,0 002b:Ret gdi32.GetGlyphOutlineW() retval=00000084 ret=0051a161 --- snip ---
A correct glyph: --- snip --- 002b:Call KERNEL32.MultiByteToWideChar(000004e4,00000001,0033f644 "a",00000001,0033f640,00000001) ret=0051a005 002b:trace:nls:MultiByteToWideChar cp 1252 "a" -> L"a", ret = 1 002b:Ret KERNEL32.MultiByteToWideChar() retval=00000001 ret=0051a005 002b:Call gdi32.GetGlyphOutlineW(0037005b,00000061,00000005,00d0e770,00000000,009a2ad8,005671d0) ret=0051a053 002b:trace:font:GetGlyphOutlineW (0x37005b, 0061, 0005, 0xd0e770, 0, 0x9a2ad8, 0x5671d0) 002b:trace:font:get_glyph_outline 0x1c2570, 0061, 00000005, 0xd0e770, 00000000, 0x9a2ad8, 0x5671d0 002b:trace:font:get_glyph_outline font transform 1.000000 0.000000 0.000000 1.000000 002b:trace:font:get_glyph_outline 9,12,(0,11),8,0 002b:Ret gdi32.GetGlyphOutlineW() retval=00000090 ret=0051a053 002b:Call gdi32.GetGlyphOutlineW(0037005b,00000061,00000005,00d0e770,00000090,009a2ad8,005671d0) ret=0051a161 002b:trace:font:GetGlyphOutlineW (0x37005b, 0061, 0005, 0xd0e770, 144, 0x9a2ad8, 0x5671d0) 002b:trace:font:get_glyph_outline 0x1c2570, 0061, 00000005, 0xd0e770, 00000090, 0x9a2ad8, 0x5671d0 002b:trace:font:get_glyph_outline font transform 1.000000 0.000000 0.000000 1.000000 002b:trace:font:get_glyph_outline 9,12,(0,11),8,0 002b:Ret gdi32.GetGlyphOutlineW() retval=00000090 ret=0051a161 --- snip ---