* 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 ??
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
diff --git a/ChangeLog b/ChangeLog
index 5031e66..63bec40 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2006-02-23 David Turner <david@freetype.org>
+
+ * 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 <b90201047@ntu.edu.tw>
* include/freetype/ftoutln.h (enum FT_Orientation): New value
diff --git a/src/bdf/bdflib.c b/src/bdf/bdflib.c
index 8d43746..8f7bd64 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 ) &&