[buffer] Fix invalid write access in hb_buffer_deserialize_glyphs()
If buffer is immutable, we were trying to set content_type on it. Ouch!
This commit is contained in:
parent
18b8046c6a
commit
a1f4d285e1
|
@ -437,6 +437,12 @@ hb_buffer_deserialize_glyphs (hb_buffer_t *buffer,
|
||||||
assert ((!buffer->len && (buffer->content_type == HB_BUFFER_CONTENT_TYPE_INVALID)) ||
|
assert ((!buffer->len && (buffer->content_type == HB_BUFFER_CONTENT_TYPE_INVALID)) ||
|
||||||
(buffer->content_type == HB_BUFFER_CONTENT_TYPE_GLYPHS));
|
(buffer->content_type == HB_BUFFER_CONTENT_TYPE_GLYPHS));
|
||||||
|
|
||||||
|
if (unlikely (hb_object_is_immutable (buffer)))
|
||||||
|
{
|
||||||
|
*end_ptr = buf;
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
if (buf_len == -1)
|
if (buf_len == -1)
|
||||||
buf_len = strlen (buf);
|
buf_len = strlen (buf);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue