From 5bce44ef030a18d7ed3f6e3abf824d42ab84bf70 Mon Sep 17 00:00:00 2001 From: John Tapsell Date: Thu, 8 Mar 2012 23:10:30 +0000 Subject: Harfbuzz GPOS hinting- do not consider a subtable to be invalid if it is just empty Considering a subtable to be invalid when it was empty meant that it returned an error causing all further hinting to be aborted. This means that we get no hinting in certain cases with certain fonts. Change-Id: I840c016dc85935b4f2c4373c66a79b4bd8b3a30d Reviewed-by: Adrian Yanes Reviewed-by: Eskil Abrahamsen Blomfeldt --- src/3rdparty/harfbuzz/src/harfbuzz-gpos.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/3rdparty/harfbuzz/src/harfbuzz-gpos.c b/src/3rdparty/harfbuzz/src/harfbuzz-gpos.c index 7bd3b3b..78f4c3a 100644 --- a/src/3rdparty/harfbuzz/src/harfbuzz-gpos.c +++ b/src/3rdparty/harfbuzz/src/harfbuzz-gpos.c @@ -1507,6 +1507,9 @@ static HB_Error Lookup_PairPos1( GPOS_Instance* gpi, if ( index >= ppf1->PairSetCount ) return ERR(HB_Err_Invalid_SubTable); + if (!ppf1->PairSet[index].PairValueCount) + return HB_Err_Not_Covered; + pvr = ppf1->PairSet[index].PairValueRecord; if ( !pvr ) return ERR(HB_Err_Invalid_SubTable); -- cgit v0.12