Files
ghostty-org-ghostty/src
Mitchell Hashimoto 702c3f58d9 font/freetype: introduce mutexes to ensure thread safety of Library and Face (#7238)
tl;dr: FT_New_Face and FT_Done_Face require the Library to be locked for
thread safety, and FT_Load_Glyph and FT_Render_Glyph and friends need
the face to be locked for thread safety, since we're sharing faces
across threads.

For details see comments and FreeType docs @
-
https://freetype.org/freetype2/docs/reference/ft2-library_setup.html#ft_library
-
https://freetype.org/freetype2/docs/reference/ft2-face_creation.html#ft_face

---

This might resolve the issue discussed in #7016 but I wasn't able to
reliably reproduce it in a way I could debug, so someone who was
experiencing it should probably test this PR.

Additionally I can still semi-reliably produce a crash with the GTK
apprt by setting an `all:` keybind to adjust font sizes and changing the
font size rapidly with many surfaces open with emojis on them.
Unfortunately I can't really tell what the root cause is because the
debug info is broken in QEMU.

However, I do think this is a good idea for us to be thread safe with
this stuff even if it isn't related to that problem.
2025-05-06 07:18:11 -07:00
..
2024-03-26 16:14:25 -07:00
2025-04-23 08:10:01 -05:00
2025-05-01 19:41:02 +02:00
2025-03-12 09:55:52 -07:00
2025-03-12 10:04:17 -07:00
2025-03-12 10:15:14 -07:00
2025-01-18 22:47:18 +09:00
2025-03-12 10:04:17 -07:00
2025-03-12 09:55:52 -07:00
2025-02-11 16:43:50 -08:00
2024-09-26 22:00:11 -07:00
2025-03-11 14:39:04 -07:00
2024-10-18 08:11:11 -07:00
2025-03-12 09:55:52 -07:00
2025-03-11 14:53:30 -07:00
2025-03-07 13:42:00 -08:00
2024-08-16 14:35:10 -07:00
2022-08-18 11:42:32 -07:00
2025-03-12 16:29:17 -07:00
2025-03-12 11:29:13 -07:00
2025-03-12 09:55:52 -07:00
2024-08-16 10:36:10 -07:00