about summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--dwm.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/dwm.c b/dwm.c
index c31343c..d903e9a 100644
--- a/dwm.c
+++ b/dwm.c
@@ -577,15 +577,14 @@ drawtext(const char *text, unsigned long col[ColLast], Bool invert) {
 	if(!text)
 		return;
 	olen = strlen(text);
-	len = MIN(olen, sizeof buf);
-	memcpy(buf, text, len);
 	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 && (i = textnw(buf, len)) > dc.w - h; len--);
+	for(len = MIN(olen, sizeof buf); len && (i = textnw(buf, len)) > dc.w - h; len--);
 	if(!len)
 		return;
+	memcpy(buf, text, len);
 	if(len < olen)
 		for(i = len; i && i > len - 3; buf[--i] = '.');
 	XSetForeground(dpy, dc.gc, col[invert ? ColBG : ColFG]);