diff --git a/legacy/evas/src/evas_gl_routines.c b/legacy/evas/src/evas_gl_routines.c index af925d809d..1bfadad7a0 100644 --- a/legacy/evas/src/evas_gl_routines.c +++ b/legacy/evas/src/evas_gl_routines.c @@ -2058,7 +2058,12 @@ __evas_gl_text_get_size(Evas_GL_Font *fn, char *text, int *w, int *h) if (i == 0) pw += ((-g->metrics.bearingX) / 64); if (text[i + 1] == 0) /* last char - ineternationalization issue */ - pw += (g->metrics.bbox.xMax / 64); + { + if ((g->metrics.bbox.xMax / 64) == 0) + pw += (g->metrics.advance / 64); + else + pw += (g->metrics.bbox.xMax / 64); + } else pw += g->metrics.advance / 64; } diff --git a/legacy/evas/src/evas_x11_routines.c b/legacy/evas/src/evas_x11_routines.c index 9571de3114..668719c585 100644 --- a/legacy/evas/src/evas_x11_routines.c +++ b/legacy/evas/src/evas_x11_routines.c @@ -1104,7 +1104,12 @@ __evas_x11_text_get_size(Evas_X11_Font *fn, char *text, int *w, int *h) if (i == 0) pw += ((-g->metrics.bearingX) / 64); if (text[i + 1] == 0) /* last char - ineternationalization issue */ - pw += (g->metrics.bbox.xMax / 64); + { + if ((g->metrics.bbox.xMax / 64) == 0) + pw += (g->metrics.advance / 64); + else + pw += (g->metrics.bbox.xMax / 64); + } else pw += g->metrics.advance / 64; }