Commit Diff


commit - 6521b5dc32d9bdc4d8826324cb7b2877910cc633
commit + 315b7ee9ce13603339104cab0402d7d6c10e92b8
blob - 6e7077af3963f93d96c12aa731754106f778fe3c
blob + 37bec706e27fdb2dc81c4061c1636888c53ccc2a
--- st.c
+++ st.c
@@ -3298,8 +3298,6 @@ xdraws(char *s, Glyph base, int x, int y, int charlen,
 		XftDrawRect(xw.draw, fg, winx, winy + font->ascent + 1,
 				width, 1);
 	}
-	XCopyArea(xw.dpy, xw.buf, xw.win, dc.gc, winx, winy, width,
-			CEIL((font->ascent + font->descent) * chscale), winx, winy);
 
 	/* Reset clip to none. */
 	XftDrawSetClip(xw.draw, 0);
@@ -3398,6 +3396,8 @@ redraw(int timeout) {
 void
 draw(void) {
 	drawregion(0, 0, term.col, term.row);
+	XCopyArea(xw.dpy, xw.buf, xw.win, dc.gc, 0, 0, xw.w,
+			xw.h, 0, 0);
 	XSetForeground(xw.dpy, dc.gc,
 			dc.col[IS_SET(MODE_REVERSE)?
 				defaultfg : defaultbg].pixel);