Fix some problems in new backend integration
Fix several use of uninitialized/unallocated variables when using --experimental-backends Signed-off-by: Yuxuan Shui <yshuiv7@gmail.com>
This commit is contained in:
14
src/win.c
14
src/win.c
@ -611,8 +611,18 @@ void calc_win_size(session_t *ps, win *w) {
|
||||
w->flags |= WFLAG_SIZE_CHANGE;
|
||||
// Invalidate the shadow we built
|
||||
if (ps->o.experimental_backends) {
|
||||
backend_list[ps->o.backend]->release_win(ps->backend_data, ps, w, w->win_data);
|
||||
w->win_data = backend_list[ps->o.backend]->prepare_win(ps->backend_data, ps, w);
|
||||
if (w->state != WSTATE_UNMAPPED && w->state != WSTATE_MAPPED) {
|
||||
// wrapping up fading
|
||||
w->opacity = w->opacity_tgt;
|
||||
win_check_fade_finished(ps, &w);
|
||||
}
|
||||
if (!w) {
|
||||
return;
|
||||
}
|
||||
if (w->state == WSTATE_MAPPED) {
|
||||
backend_list[ps->o.backend]->release_win(ps->backend_data, ps, w, w->win_data);
|
||||
w->win_data = backend_list[ps->o.backend]->prepare_win(ps->backend_data, ps, w);
|
||||
}
|
||||
} else {
|
||||
free_paint(ps, &w->shadow_paint);
|
||||
}
|
||||
|
Reference in New Issue
Block a user