small change to drawtext - dwm - dynamic window manager HTML git clone https://git.parazyd.org/dwm DIR Log DIR Files DIR Refs DIR README DIR LICENSE --- DIR commit 08bcf721b436018306bdbb9fbaca87f941ee6441 DIR parent fc578c57e4c265cefff0a55a0ca74172a84e757d HTML Author: arg@suckless.org <unknown> Date: Mon, 2 Jun 2008 12:19:02 +0200 small change to drawtext Diffstat: M dwm.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) --- DIR diff --git a/dwm.c b/dwm.c @@ -551,7 +551,7 @@ drawsquare(Bool filled, Bool empty, Bool invert, ulong col[ColLast]) { void drawtext(const char *text, ulong col[ColLast], Bool invert) { - int x, y, w, h; + int i, x, y, h; uint len, olen; XRectangle r = { dc.x, dc.y, dc.w, dc.h }; char buf[256]; @@ -563,16 +563,15 @@ drawtext(const char *text, ulong col[ColLast], Bool invert) { olen = strlen(text); len = MIN(olen, sizeof buf); memcpy(buf, text, len); - w = 0; h = dc.font.ascent + dc.font.descent; y = dc.y + (dc.h / 2) - (h / 2) + dc.font.ascent; x = dc.x + (h / 2); /* shorten text if necessary */ - for(; len && (w = textnw(buf, len)) > dc.w - h; len--); + for(; len && (i = textnw(buf, len)) > dc.w - h; len--); if(!len) return; if(len < olen) - memcpy(&buf[MAX(0, len - 3)], "...", 3); + for(i = len; i >= MAX(0, len - 3); buf[i--] = '.'); XSetForeground(dpy, dc.gc, col[invert ? ColBG : ColFG]); if(dc.font.set) XmbDrawString(dpy, dc.drawable, dc.font.set, dc.gc, x, y, buf, len);