diff --git a/legacy/evas/README b/legacy/evas/README index ee9b022024..2348a8fb0b 100644 --- a/legacy/evas/README +++ b/legacy/evas/README @@ -326,7 +326,9 @@ Notes: gcc 3.0.x on solaris screws up the jpeg code so erroring out doesn't work. use gcc 3.2 on solaris. freetype 2.1.2 is BAD. RedHat 8.0 uses this as do some streams of debain. - either downgrade to 2.1.1 or upgrade to 2.1.3. don't use 2.1.2. + either downgrade to 2.1.1. freetype 2.1.3 is ALSO BAD. It has glyph + metric rendering bugs and glyph geomery query bugs. do not use it. + try using 2.0.3. It is known to be stable and work perfectly with Evas. -------------------------------------------------------------------------- notes on features: diff --git a/legacy/evas/src/lib/engines/common/evas_font_draw.c b/legacy/evas/src/lib/engines/common/evas_font_draw.c index 8592037258..06717939c0 100644 --- a/legacy/evas/src/lib/engines/common/evas_font_draw.c +++ b/legacy/evas/src/lib/engines/common/evas_font_draw.c @@ -126,6 +126,12 @@ evas_common_font_draw(RGBA_Image *dst, RGBA_Draw_Context *dc, RGBA_Font *fn, int data = fg->glyph_out->bitmap.buffer; j = fg->glyph_out->bitmap.pitch; w = fg->glyph_out->bitmap.width; + /* BUG: freetype 2.1.3 has a bug - workaround */ + /* ft2.1.3 is giving me rowstrides for some fonts in */ + /* some point sises of.... 1 !!!! this is wrong. */ + /* second guess it and "fixup" here */ + if (j < w) j = w; + /* end BUG workaround */ h = fg->glyph_out->bitmap.rows; if ((j > 0) && (chr_x + w > ext_x)) {