From 22a8b665716edab993ce09008d0fb541498d633b Mon Sep 17 00:00:00 2001 From: Bert Münnich Date: Mon, 29 Oct 2012 23:23:50 +0100 Subject: Fixed BadDrawable errors caused by invalid window pixmap --- window.c | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) (limited to 'window.c') diff --git a/window.c b/window.c index 71a7915..b9970a6 100644 --- a/window.c +++ b/window.c @@ -267,12 +267,11 @@ bool win_configure(win_t *win, XConfigureEvent *c) { } void win_expose(win_t *win, XExposeEvent *e) { - if (win == NULL || win->xwin == None || e == NULL) + if (win == NULL || win->xwin == None || win->pm == None || e == NULL) return; - if (win->pm != None) - XCopyArea(win->env.dpy, win->pm, win->xwin, gc, - e->x, e->y, e->width, e->height, e->x, e->y); + XCopyArea(win->env.dpy, win->pm, win->xwin, gc, + e->x, e->y, e->width, e->height, e->x, e->y); } bool win_moveresize(win_t *win, int x, int y, unsigned int w, unsigned int h) { @@ -359,7 +358,7 @@ void win_draw_bar(win_t *win) { int len, x, y, w, tw = 0, seplen; const char *rt; - if (win == NULL || win->xwin == None) + if (win == NULL || win->xwin == None || win->pm == None) return; e = &win->env; @@ -407,7 +406,7 @@ void win_draw_bar(win_t *win) { } void win_draw(win_t *win) { - if (win == NULL || win->xwin == None) + if (win == NULL || win->xwin == None || win->pm == None) return; if (win->barh > 0) -- cgit v1.2.3-54-g00ecf