https://bugs.winehq.org/show_bug.cgi?id=49202
Bug ID: 49202 Summary: Never exited critical section in freetype.c Product: Wine Version: 5.8 Hardware: x86 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown Assignee: wine-bugs@winehq.org Reporter: mikrutrafal54@gmail.com Distribution: ---
if expression `(!enum_face_charsets(family, face, &enum_charsets, proc, lparam, NULL))` is true, then only return is executed without exiting critical session
https://github.com/wine-mirror/wine/blob/6d801377055911d914226a3c6af8d8637a6...
``` if (!enum_face_charsets(family, face, &enum_charsets, proc, lparam, psub ? psub->from.name : NULL)) return FALSE; } } } else { LIST_FOR_EACH_ENTRY( family, &font_list, Family, entry ) { face_list = get_face_list_from_family(family); face = LIST_ENTRY(list_head(face_list), Face, entry); if (!enum_face_charsets(family, face, &enum_charsets, proc, lparam, NULL)) return FALSE; ```
https://bugs.winehq.org/show_bug.cgi?id=49202
--- Comment #1 from Nikolay Sivov bunglehead@gmail.com --- Helper function enum_face_charsets() will leave the section before returning 0, so I don't think it's a valid issue.
https://bugs.winehq.org/show_bug.cgi?id=49202
François Gouget fgouget@codeweavers.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Assignee|wine-bugs@winehq.org |fgouget@codeweavers.com CC| |fgouget@codeweavers.com
--- Comment #2 from François Gouget fgouget@codeweavers.com --- I concur with Nikolay but the font_lock handling is quite unexpected and should be better documented: https://gitlab.winehq.org/wine/wine/-/merge_requests/1991
https://bugs.winehq.org/show_bug.cgi?id=49202
François Gouget fgouget@codeweavers.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Resolution|--- |FIXED Status|UNCONFIRMED |RESOLVED Fixed by SHA1| |a9c03e6d5b4741c204ca8185ce2 | |31d80dbb16d58
--- Comment #3 from François Gouget fgouget@codeweavers.com --- This is now documented so this bug can be closed.
commit a9c03e6d5b4741c204ca8185ce231d80dbb16d58 Author: François Gouget fgouget@codeweavers.com Date: Fri Jan 20 11:24:25 2023 +0100
win32u: Document the font_lock handling in font_EnumFonts().
Wine-Bug: https://bugs.winehq.org//show_bug.cgi?id=49202
https://bugs.winehq.org/show_bug.cgi?id=49202
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #4 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 8.1.