Support U+061C ARABIC LETTER MARK by making it invisible when rendering text.

The character works automagically otherwise: for the Unicode Bidirectional
Algorithm, the default type for undefined characters in the Arabic block is
set to AL.

Patch cherrypicked from upstream at:
https://github.com/behdad/harfbuzz/commit/a8bf0e91f18341e1e20f4e3341fc7dcdd0c990e1

Bug: 10190564
Change-Id: Id50c3163d3751b0247095c1c110432962683638c
diff --git a/src/hb-unicode-private.hh b/src/hb-unicode-private.hh
index 155a8a3..dd4d001 100644
--- a/src/hb-unicode-private.hh
+++ b/src/hb-unicode-private.hh
@@ -128,6 +128,9 @@
    * is NOT Default_Ignorable, but it really behaves in a way that it should
    * be.  That has been reported to the Unicode Technical Committee for
    * consideration.  As such, we include it here, since Uniscribe removes it.
+   * It *is* in Unicode 6.3 however.  U+061C ARABIC LETTER MARK from Unicode
+   * 6.3 is also added manually.  The new Unicode 6.3 bidi formatting
+   * characters are encoded in a block that was Default_Ignorable already.
    *
    * Note: While U+115F and U+1160 are Default_Ignorable, we do NOT want to
    * hide them, as the way Uniscribe has implemented them is with regular
@@ -173,6 +176,7 @@
       switch (page) {
 	case 0x00: return unlikely (ch == 0x00AD);
 	case 0x03: return unlikely (ch == 0x034F);
+	case 0x06: return unlikely (ch == 0x061C);
 	case 0x17: return hb_in_range<hb_codepoint_t> (ch, 0x17B4, 0x17B5);
 	case 0x18: return hb_in_range<hb_codepoint_t> (ch, 0x180B, 0x180E);
 	case 0x20: return hb_in_ranges<hb_codepoint_t> (ch, 0x200B, 0x200F,