[MarkBase] Adjust base-finding logic

Fixes https://github.com/harfbuzz/harfbuzz/issues/4124
This commit is contained in:
Behdad Esfahbod 2023-02-17 12:29:42 -07:00
parent 946477fa54
commit adccc5355b
1 changed files with 3 additions and 1 deletions

View File

@ -133,7 +133,9 @@ struct MarkBasePosFormat1_2
auto match = skippy_iter.match (buffer->info[j - 1]); auto match = skippy_iter.match (buffer->info[j - 1]);
if (match == skippy_iter.MATCH) if (match == skippy_iter.MATCH)
{ {
if (!accept (buffer, j - 1)) // https://github.com/harfbuzz/harfbuzz/issues/4124
if (!accept (buffer, j - 1) &&
NOT_COVERED == (this+baseCoverage).get_coverage (buffer->info[j - 1].codepoint))
match = skippy_iter.SKIP; match = skippy_iter.SKIP;
} }
if (match == skippy_iter.MATCH) if (match == skippy_iter.MATCH)