[Indic] Better check for applying 'init'
Specifically, don't apply 'init' if previous char is a joiner.
Fixes some more of Bengali.
diff --git a/src/hb-private.hh b/src/hb-private.hh
index 7b778b7..bdfd3f5 100644
--- a/src/hb-private.hh
+++ b/src/hb-private.hh
@@ -734,7 +734,8 @@
* For example, for testing "x ∈ {x1, x2, x3}" use:
* (FLAG(x) & (FLAG(x1) | FLAG(x2) | FLAG(x3)))
*/
-#define FLAG(x) (1<<(x))
+#define FLAG(x) (ASSERT_STATIC_EXPR_ZERO((x) < 8 * sizeof(int)) + (1<<(x)))
+#define FLAG_RANGE(x,y) (ASSERT_STATIC_EXPR_ZERO ((x) < (y)) + FLAG(y+1) - FLAG(x))
template <typename T, typename T2> inline void