diff --git a/src/hb-buffer.c b/src/hb-buffer.c index 31b6c0fb6faa1e182a0159fa1d87dfe519126c1b..d2ec33dcb888ca036e4681f4b91891c122193a4c 100644 --- a/src/hb-buffer.c +++ b/src/hb-buffer.c @@ -244,7 +244,7 @@ _hb_buffer_add_output_glyphs (hb_buffer_t *buffer, unsigned int properties; unsigned int cluster; - if (buffer->out_string == buffer->in_string && + if (buffer->out_string != buffer->in_string || buffer->out_pos + num_out > buffer->in_pos + num_in) { hb_buffer_ensure_separate (buffer, buffer->out_pos + num_out);