From 2df94e37ffa84063ed1bff46ca7978d860c32d6f Mon Sep 17 00:00:00 2001 From: Brett Nash Date: Thu, 29 Jul 2010 03:34:30 +0000 Subject: [PATCH] Minor fixes to font drawing with metric caching enabled. SVN revision: 50632 --- .../src/lib/engines/common/evas_font_draw.c | 30 +++++++++++-------- 1 file changed, 17 insertions(+), 13 deletions(-) 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 a00fe81e12..01f37edb7d 100644 --- a/legacy/evas/src/lib/engines/common/evas_font_draw.c +++ b/legacy/evas/src/lib/engines/common/evas_font_draw.c @@ -464,20 +464,24 @@ evas_common_font_draw_internal(RGBA_Image *dst, RGBA_Draw_Context *dc, RGBA_Font for (ind = 0 ; ind < len ; ind ++){ // FIXME Do we need to draw? struct cinfo *ci = word->cinfo + ind; - if ((ci->fg->ext_dat) && (dc->font_ext.func.gl_draw)) + for (j = rowstart ; j < rowend ; j ++) { - /* ext glyph draw */ - dc->font_ext.func.gl_draw(dc->font_ext.data, - (void *)dst, - dc, ci->fg, - x + ci->pos.x, - y - ci->bm.h - ); - } - else - { - func(NULL, word->im + (word->roww * j) + xstart, dc->col.col, im + ((y + j) * im_w) + x, xrun); - } + if ((ci->fg->ext_dat) && (dc->font_ext.func.gl_draw)) + { + /* ext glyph draw */ + dc->font_ext.func.gl_draw(dc->font_ext.data, + (void *)dst, + dc, ci->fg, + x + ci->pos.x, + y - ci->bm.h + j + ); + } + else + { + func(NULL, word->im + (word->roww * j) + xstart, + dc->col.col, im + ((y + j) * im_w) + x, xrun); + } + } } return; #endif