Fixed BadDrawable errors caused by invalid window pixmap

This commit is contained in:
Bert Münnich 2012-10-29 23:23:50 +01:00
parent 4a5d5d26aa
commit 22a8b66571

View file

@ -267,10 +267,9 @@ 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);
}
@ -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)