From 5efcfda2eda208ce6f45e90734dfcdebfee4baad Mon Sep 17 00:00:00 2001 From: shdown Date: Sat, 21 Mar 2015 19:00:11 +0300 Subject: [PATCH] i3bar: fix clearing of the statusline pixmap This fixes the bug when statusline pixmap wasn't entirely cleared that caused random artifacts to appear when the statusline width is greater than the screen width. --- i3bar/src/xcb.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/i3bar/src/xcb.c b/i3bar/src/xcb.c index 8bda53c4..79e9ad9c 100644 --- a/i3bar/src/xcb.c +++ b/i3bar/src/xcb.c @@ -174,7 +174,7 @@ void refresh_statusline(void) { realloc_sl_buffer(); /* Clear the statusline pixmap. */ - xcb_rectangle_t rect = {0, 0, root_screen->width_in_pixels, bar_height}; + xcb_rectangle_t rect = {0, 0, MAX(root_screen->width_in_pixels, statusline_width), bar_height}; xcb_poly_fill_rectangle(xcb_connection, statusline_pm, statusline_clear, 1, &rect); /* Draw the text of each block. */