diff options
Diffstat (limited to 'Build/source/libs/harfbuzz/harfbuzz-src/src/hb-uniscribe.cc')
-rw-r--r-- | Build/source/libs/harfbuzz/harfbuzz-src/src/hb-uniscribe.cc | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-uniscribe.cc b/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-uniscribe.cc index 01be0cc846b..7fda6788b6a 100644 --- a/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-uniscribe.cc +++ b/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-uniscribe.cc @@ -919,7 +919,7 @@ retry: if (unlikely (items[i].a.fNoGlyphIndex)) FAIL ("ScriptShapeOpenType() set fNoGlyphIndex"); - if (unlikely (hr == E_OUTOFMEMORY)) + if (unlikely (hr == E_OUTOFMEMORY || hr == E_NOT_SUFFICIENT_BUFFER)) { if (unlikely (!buffer->ensure (buffer->allocated * 2))) FAIL ("Buffer resize failed"); @@ -1019,7 +1019,7 @@ retry: hb_glyph_position_t *pos = &buffer->pos[i]; /* TODO vertical */ - pos->x_advance = x_mult * info->mask; + pos->x_advance = x_mult * (int32_t) info->mask; pos->x_offset = x_mult * (backward ? -info->var1.i32 : info->var1.i32); pos->y_offset = y_mult * info->var2.i32; } |