Don't decompose Bengali Rra and Rha
authorEbrahim Byagowi <ebrahim@gnu.org>
Fri, 13 Apr 2018 08:13:29 +0000 (12:43 +0430)
committerBehdad Esfahbod <behdad@behdad.org>
Thu, 26 Apr 2018 20:54:09 +0000 (13:54 -0700)
Fixes #779 and follow up to b01d9b3d90e892341ee4463f2eda4600850b97d8

src/hb-ot-shape-complex-indic.cc
test/shaping/data/in-house/Makefile.sources
test/shaping/data/in-house/fonts/932ad5132c2761297c74e9976fe25b08e5ffa10b.ttf [new file with mode: 0644]
test/shaping/data/in-house/tests/indic-decompose.tests [new file with mode: 0644]

index fdc8966..cd80da6 100644 (file)
@@ -1470,6 +1470,9 @@ decompose_indic (const hb_ot_shape_normalize_context_t *c,
   {
     /* Don't decompose these. */
     case 0x0931u  : return false; /* DEVANAGARI LETTER RRA */
+    // https://github.com/harfbuzz/harfbuzz/issues/779
+    case 0x09DCu  : return false; /* BENGALI LETTER RRA */
+    case 0x09DDu  : return false; /* BENGALI LETTER RHA */
     case 0x0B94u  : return false; /* TAMIL LETTER AU */
 
 
index 1922fd4..9a1434e 100644 (file)
@@ -16,6 +16,7 @@ TESTS = \
        tests/hangul-jamo.tests \
        tests/hyphens.tests \
        tests/indic-consonant-with-stacker.tests \
+       tests/indic-decompose.tests \
        tests/indic-init.tests \
        tests/indic-joiner-candrabindu.tests \
        tests/indic-joiners.tests \
diff --git a/test/shaping/data/in-house/fonts/932ad5132c2761297c74e9976fe25b08e5ffa10b.ttf b/test/shaping/data/in-house/fonts/932ad5132c2761297c74e9976fe25b08e5ffa10b.ttf
new file mode 100644 (file)
index 0000000..ef20bf8
Binary files /dev/null and b/test/shaping/data/in-house/fonts/932ad5132c2761297c74e9976fe25b08e5ffa10b.ttf differ
diff --git a/test/shaping/data/in-house/tests/indic-decompose.tests b/test/shaping/data/in-house/tests/indic-decompose.tests
new file mode 100644 (file)
index 0000000..ca887be
--- /dev/null
@@ -0,0 +1 @@
+../fonts/932ad5132c2761297c74e9976fe25b08e5ffa10b.ttf:--font-funcs=ot:U+09DC,U+0020,U+09DD,U+0020,U+09A1,U+09BC,U+0020,U+09A2,U+09BC:[bn_rha=0+1024|space=1+1024|bn_yya=2+1024|space=3+1024|bn_dda=4+1024|bn_nukta=4+1024|space=6+1024|bn_ddha=7+1024|bn_nukta=7+1024]