OSDN Git Service

fix assert and compiler warning about it in HarfBuzz shaper
authorIvailo Monev <xakepa10@laimg.moc>
Tue, 3 Dec 2019 08:04:04 +0000 (08:04 +0000)
committerIvailo Monev <xakepa10@laimg.moc>
Tue, 3 Dec 2019 08:04:04 +0000 (08:04 +0000)
Signed-off-by: Ivailo Monev <xakepa10@laimg.moc>
src/3rdparty/harfbuzz/src/harfbuzz-shaper.cpp

index 41439a0..c66278a 100644 (file)
@@ -928,6 +928,7 @@ const HB_ScriptEngine HB_ScriptEngines[] = {
     // Zawgyi
     { HB_BasicShape, 0},
 };
+static const int NumEngines = sizeof(HB_ScriptEngines)/sizeof(HB_ScriptEngine);
 
 void HB_GetCharAttributes(const HB_UChar16 *string, hb_uint32 stringLength,
                           const HB_ScriptItem *items, hb_uint32 numItems,
@@ -1493,12 +1494,14 @@ static const OTScripts ot_scripts [] = {
     // Zawgyi
     { DefaultScript, 0 },
 };
-enum { NumOTScripts = sizeof(ot_scripts)/sizeof(OTScripts) };
+static const int NumOTScripts = sizeof(ot_scripts)/sizeof(OTScripts);
 
 static HB_Bool checkScript(HB_Face face, int script)
 {
     assert(script <= HB_ScriptCount);
-    assert(NumOTScripts == HB_ScriptCount);
+    // HB_ScriptCount is the last script, first script is 0
+    assert((NumOTScripts - 1) == HB_ScriptCount);
+    assert((NumEngines - 1) == HB_ScriptCount);
 
     if (!face->gsub && !face->gpos)
         return false;