diff options
-rw-r--r-- | third_party/harfbuzz/chromium.patch | 21 | ||||
-rw-r--r-- | third_party/harfbuzz/src/harfbuzz-hebrew.c | 3 |
2 files changed, 23 insertions, 1 deletions
diff --git a/third_party/harfbuzz/chromium.patch b/third_party/harfbuzz/chromium.patch index 3e26566..8e0c827 100644 --- a/third_party/harfbuzz/chromium.patch +++ b/third_party/harfbuzz/chromium.patch @@ -67,3 +67,24 @@ index 36b9282..3628c88 100644 // first char in a run is never (treated as) a mark int cStart = 0; +diff --git a/third_party/harfbuzz/src/harfbuzz-hebrew.c b/third_party/harfbuzz/src/harfbuzz-hebrew.c +index 533a063..2bda386 100644 +--- a/third_party/harfbuzz/src/harfbuzz-hebrew.c ++++ b/third_party/harfbuzz/src/harfbuzz-hebrew.c +@@ -56,6 +56,8 @@ HB_Bool HB_HebrewShape(HB_ShaperItem *shaper_item) + + assert(shaper_item->item.script == HB_Script_Hebrew); + ++ HB_HeuristicSetGlyphAttributes(shaper_item); ++ + #ifndef NO_OPENTYPE + if (HB_SelectScript(shaper_item, hebrew_features)) { + +@@ -64,7 +66,6 @@ HB_Bool HB_HebrewShape(HB_ShaperItem *shaper_item) + return FALSE; + + +- HB_HeuristicSetGlyphAttributes(shaper_item); + HB_OpenTypeShape(shaper_item, /*properties*/0); + return HB_OpenTypePosition(shaper_item, availableGlyphs, /*doLogClusters*/TRUE); + } diff --git a/third_party/harfbuzz/src/harfbuzz-hebrew.c b/third_party/harfbuzz/src/harfbuzz-hebrew.c index 533a063..2bda386 100644 --- a/third_party/harfbuzz/src/harfbuzz-hebrew.c +++ b/third_party/harfbuzz/src/harfbuzz-hebrew.c @@ -56,6 +56,8 @@ HB_Bool HB_HebrewShape(HB_ShaperItem *shaper_item) assert(shaper_item->item.script == HB_Script_Hebrew); + HB_HeuristicSetGlyphAttributes(shaper_item); + #ifndef NO_OPENTYPE if (HB_SelectScript(shaper_item, hebrew_features)) { @@ -64,7 +66,6 @@ HB_Bool HB_HebrewShape(HB_ShaperItem *shaper_item) return FALSE; - HB_HeuristicSetGlyphAttributes(shaper_item); HB_OpenTypeShape(shaper_item, /*properties*/0); return HB_OpenTypePosition(shaper_item, availableGlyphs, /*doLogClusters*/TRUE); } |