core: ignore window with IMAGE_ERRORs

window with IMAGE_ERROR might not have an image data attached, so ignore
them during paint.

Signed-off-by: Yuxuan Shui <yshuiv7@gmail.com>
This commit is contained in:
Yuxuan Shui 2019-03-17 03:04:23 +00:00
parent b32ae5a32c
commit 9bb2fa44d4
No known key found for this signature in database
GPG Key ID: 37C999F617EA1A47
1 changed files with 6 additions and 1 deletions

View File

@ -511,8 +511,13 @@ static win *paint_preprocess(session_t *ps, bool *fade_running) {
if (!w->ever_damaged || w->g.x + w->g.width < 1 ||
w->g.y + w->g.height < 1 || w->g.x >= ps->root_width ||
w->g.y >= ps->root_height || w->state == WSTATE_UNMAPPED ||
(double)w->opacity * MAX_ALPHA < 1 || w->paint_excluded)
(double)w->opacity * MAX_ALPHA < 1 || w->paint_excluded) {
to_paint = false;
}
if ((w->flags & WIN_FLAGS_IMAGE_ERROR) != 0) {
to_paint = false;
}
// log_trace("%s %d %d %d", w->name, to_paint, w->opacity,
// w->paint_excluded);