https://bugs.winehq.org/show_bug.cgi?id=44963
Bug ID: 44963 Summary: gdi32: GetTextExtentExPoint* broken wrt. fake_bold Product: Wine Version: 3.5 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: gdi32 Assignee: wine-bugs@winehq.org Reporter: galtgendo@o2.pl Distribution: ---
I'm not sure if I can describe it properly.
The chain goes about this way: - CreateFontIndirectEx is passed size (-22) and weight Bold - SelectFont runs and returns a *fake_bold* font with MaxCharWidth = 24 - based upon that GetTextExtentExPoint will be called with nMaxExtent = 24 - that call will incorrectly fail (return FALSE), as artificial bold will make the glyph 25px wide (because of get_advance_metric)
Adding 1 to max_ext in '(nfit && dx > (unsigned int)max_ext)' check makes things relying on GetTextExtentExPoint *not* failing work, but isn't really a proper fix...
Noticed with GetTextExtentExPointW, but (given content of the functions) most likely could be triggered by GetTextExtentExPointI too.
https://bugs.winehq.org/show_bug.cgi?id=44963
Sagawa sagawa.aki+winebugs@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |sagawa.aki+winebugs@gmail.c | |om
https://bugs.winehq.org/show_bug.cgi?id=44963
--- Comment #1 from Sagawa sagawa.aki+winebugs@gmail.com --- Thanks for reporting. Could you tell me what font face is chosen by SelectFont?
https://bugs.winehq.org/show_bug.cgi?id=44963
--- Comment #2 from Rafał Mużyło galtgendo@o2.pl --- Well, due to my fontconfig settings and wine font override entries, the chain is System -> Tahoma -> IPA Mona Gothic in the locale required by the app I've seen it in.
https://bugs.winehq.org/show_bug.cgi?id=44963
tokktokk fdsfgs@krutt.org changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |fdsfgs@krutt.org