From 6cda6c064fdb2d1df851f5f54e164341e3c1fe8f Mon Sep 17 00:00:00 2001 From: David Turner Date: Thu, 23 Feb 2006 12:37:18 +0000 Subject: [PATCH] * src/bdf/bdflib.c: fixed a bug with zero-width glyphs this patch comes from the Debian package for libfreetype6 !! How come nobody mentions this on the devel list ?? --- ChangeLog | 6 ++++++ src/bdf/bdflib.c | 5 +++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 5031e66f1..63bec40df 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2006-02-23 David Turner + + * src/bdf/bdflib.c: fixed a bug with zero-width glyphs + this patch comes from the Debian package for libfreetype6 !! + How come nobody mentions this on the devel list ?? + 2006-02-23 Chia-I Wu * include/freetype/ftoutln.h (enum FT_Orientation): New value diff --git a/src/bdf/bdflib.c b/src/bdf/bdflib.c index 8d4374637..8f7bd6433 100644 --- a/src/bdf/bdflib.c +++ b/src/bdf/bdflib.c @@ -1666,7 +1666,7 @@ nibbles = glyph->bpr << 1; bp = glyph->bitmap + p->row * glyph->bpr; - for ( i = 0, *bp = 0; i < nibbles; i++ ) + for ( i = 0, i < nibbles; i++ ) { c = line[i]; *bp = (FT_Byte)( ( *bp << 4 ) + a2i[c] ); @@ -1676,7 +1676,8 @@ /* Remove possible garbage at the right. */ mask_index = ( glyph->bbx.width * p->font->bpp ) & 7; - *bp &= nibble_mask[mask_index]; + if ( glyph->bbx.width ) + *bp &= nibble_mask[mask_index]; /* If any line has extra columns, indicate they have been removed. */ if ( ( line[nibbles] == '0' || a2i[(int)line[nibbles]] != 0 ) &&