TLine::EnumerateCaretOffsets Error

Hello all. I am currently working on a bug that has recently grown due to the beta release of iOS 18.4. I am unable to reproduce the crash at the moment; however, given that the bug is mostly exclusive to 18.4, I was wondering if this is a known issue or one specific to my app?

App crashes on the main thread with EXC_BREAKPOINT.

Below is the truncated stack trace before the crash:

0x000000018fff6044 (CoreText + 0x00069044) TLine::EnumerateCaretOffsets(std::__1::function<void (double, long, bool, bool*)>) const 0x000000018fff5938 (CoreText + 0x00068938) TLine::EnumerateCaretOffsets(std::__1::function<void (double, long, bool, bool*)>) const 0x000000018fff478c (CoreText + 0x0006778c) TLine::CharIndexToOffsets(long) const 0x000000018fff4564 (CoreText + 0x00067564) CTLineGetOffsetForStringIndex ... [internal code]

Aside: I wonder if this has anything to do with some visibly hidden unicode characters.

UPDATE: It seems this issue seems to be related to certain fonts not correctly calculating the caret position when typing ligatures, i.e. ffi.

TLine::EnumerateCaretOffsets Error
 
 
Q