From 0152bd3a562442853ab930eaea316c08b34f6ba6 Mon Sep 17 00:00:00 2001 From: Carl Worth Date: Thu, 16 Feb 2006 09:02:29 -0800 Subject: [PATCH] Allow _get_bitmap_surface to work for 0x0 glyphs, (fix for bug #5734). Patch from: Behdad Esfahbod Reviewed by: Carl Worth --- src/cairo-ft-font.c | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/src/cairo-ft-font.c b/src/cairo-ft-font.c index da1adaa40..97b14b2cd 100644 --- a/src/cairo-ft-font.c +++ b/src/cairo-ft-font.c @@ -715,12 +715,7 @@ _get_bitmap_surface (FT_Bitmap *bitmap, width = bitmap->width; height = bitmap->rows; - if (width * height == 0) { - if (own_buffer && bitmap->buffer) - free (bitmap->buffer); - - *surface = NULL; - } else { + { switch (bitmap->pixel_mode) { case FT_PIXEL_MODE_MONO: stride = (((width + 31) & ~31) >> 3); @@ -1074,7 +1069,9 @@ _render_glyph_bitmap (FT_Face face, if (error) return CAIRO_STATUS_NO_MEMORY; - _get_bitmap_surface (&glyphslot->bitmap, FALSE, font_options, surface); + status = _get_bitmap_surface (&glyphslot->bitmap, FALSE, font_options, surface); + if (status) + return status; /* * Note: the font's coordinate system is upside down from ours, so the