From 735e2efc3369d4ad28a1ab73352232e39f768e27 Mon Sep 17 00:00:00 2001 From: Behdad Esfahbod Date: Fri, 28 Aug 2009 09:46:14 -0400 Subject: Fix stupid array growing bug --- pango/opentype/hb-ot-layout.cc | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pango/opentype/hb-ot-layout.cc b/pango/opentype/hb-ot-layout.cc index c8d2d2c7..3b6b8dae 100644 --- a/pango/opentype/hb-ot-layout.cc +++ b/pango/opentype/hb-ot-layout.cc @@ -222,10 +222,13 @@ _hb_ot_layout_set_glyph_class (hb_face_t *face, /* XXX this is not threadsafe */ if (glyph >= len) { - int new_len; + unsigned int new_len; unsigned char *new_klasses; new_len = len == 0 ? 120 : 2 * len; + while (new_len <= glyph) + new_len *= 2; + if (new_len > 65536) new_len = 65536; new_klasses = (unsigned char *) realloc (layout->new_gdef.klasses, new_len * sizeof (unsigned char)); -- cgit v1.2.1