[unsafe-to-break] Mark unsafe is cluster merging is disabled
authorBehdad Esfahbod <behdad@behdad.org>
Sat, 12 Aug 2017 01:24:27 +0000 (18:24 -0700)
committerBehdad Esfahbod <behdad@behdad.org>
Sat, 12 Aug 2017 01:24:27 +0000 (18:24 -0700)
We were relying on cluster merges not requiring unsafe flagging because
they get merged.  If cluster level requests no merging, then we flag
unsafe when merge would have happened.

src/hb-buffer.cc

index 89576f0..dc93269 100644 (file)
@@ -550,7 +550,10 @@ hb_buffer_t::merge_clusters_impl (unsigned int start,
                                  unsigned int end)
 {
   if (cluster_level == HB_BUFFER_CLUSTER_LEVEL_CHARACTERS)
+  {
+    unsafe_to_break (start, end);
     return;
+  }
 
   unsigned int cluster = info[start].cluster;