Imported Upstream version 1.7.6
[platform/upstream/harfbuzz.git] / src / gen-indic-table.py
index 3016cd0..735b901 100755 (executable)
@@ -229,13 +229,13 @@ print "  {"
 pages = set([u>>page_bits for u in starts+ends+singles.keys()])
 for p in sorted(pages):
        print "    case 0x%0Xu:" % p
-       for (start,end) in zip (starts, ends):
-               if p not in [start>>page_bits, end>>page_bits]: continue
-               offset = "indic_offset_0x%04xu" % start
-               print "      if (hb_in_range (u, 0x%04Xu, 0x%04Xu)) return indic_table[u - 0x%04Xu + %s];" % (start, end-1, start, offset)
        for u,d in singles.items ():
                if p != u>>page_bits: continue
                print "      if (unlikely (u == 0x%04Xu)) return _(%s,%s);" % (u, short[0][d[0]], short[1][d[1]])
+       for (start,end) in zip (starts, ends):
+               if p not in [start>>page_bits, end>>page_bits]: continue
+               offset = "indic_offset_0x%04xu" % start
+               print "      if (hb_in_range<hb_codepoint_t> (u, 0x%04Xu, 0x%04Xu)) return indic_table[u - 0x%04Xu + %s];" % (start, end-1, start, offset)
        print "      break;"
        print ""
 print "    default:"