From: GetAway Date: Tue, 11 Jul 2017 17:01:02 +0000 (+0200) Subject: fix detect of bgcolor and thus also rendering of italic fonts X-Git-Url: https://git.webhop.me/?a=commitdiff_plain;h=86d5207853707d6185a372953e0d461dbe097cb8;p=shellexec.git fix detect of bgcolor and thus also rendering of italic fonts --- diff --git a/gfx.c b/gfx.c index 20e6267..8450739 100644 --- a/gfx.c +++ b/gfx.c @@ -22,6 +22,13 @@ void RenderBox(int _sx, int _sy, int _ex, int _ey, int rad, int col) dxx=0; } + int dyy_max = var_screeninfo.yres; + if (ssy + dyy > dyy_max) + { + printf("[%s] %s called with height = %d (max. %d)\n", __plugin__, __func__, ssy + dyy, dyy_max); + dyy = dyy_max - ssy; + } + if(R) { if(--dyy<=0) diff --git a/shellexec.c b/shellexec.c index 4cfa74d..8da836b 100644 --- a/shellexec.c +++ b/shellexec.c @@ -12,7 +12,7 @@ #include "pngw.h" -#define SH_VERSION 2.02 +#define SH_VERSION 2.03 static char CFG_FILE[128]="/var/tuxbox/config/shellexec.conf"; diff --git a/text.c b/text.c index 3d6eec7..2d9661d 100644 --- a/text.c +++ b/text.c @@ -287,7 +287,7 @@ int RenderChar(FT_ULong currentchar, int _sx, int _sy, int _ex, int color) if (_sx + sbit->xadvance >= _ex) return -1; /* limit to maxwidth */ - uint32_t bgcolor = *(lbb + (starty + _sy - sbit->top) * stride + (startx + _sx)); + uint32_t bgcolor = *(lbb + (starty + _sy - _d - 1) * stride + (startx + _sx + sbit->left)); uint32_t fgcolor = bgra[color]; uint32_t *colors = lookup_colors(fgcolor, bgcolor); uint32_t *p = lbb + (startx + _sx + sbit->left + kerning.x) + stride * (starty + _sy - sbit->top - _d); @@ -300,7 +300,7 @@ int RenderChar(FT_ULong currentchar, int _sx, int _sy, int _ex, int color) { if (*s) *q = colors[*s]; - q++, s++; + q++; s++; if (q > r) /* we are past _ex */ break; }