On Thu Oct 13 20:04:53 2022 +0000, Fabian Maurer wrote:
GSUB_apply_feature_all_lookups calls itself infinitely, until stackoverflow. As I understand it, it's supposed to apply lookups until none is left. But when we add 0 to a glyph, the lookup doesn't change anything, and we keep trying to apply the same lookup forever. You can test with the program linked at https://bugs.winehq.org/show_bug.cgi?id=53787
I see it's significantly different to what happens in dwrite currently. Especially recursing part is weird. The point is though that matched coverage even with zero delta is considered "applied" and should skip following subtables.