Fix fullscreen view rendering crash

See issue #3359 for reproduction details. When a fullscreen view is
unmapped and there's a preceding transaction waiting, there may be
neither a saved buffer or a surface to render. This change matches
the equivalent code in render_view.
This commit is contained in:
Mack Straight 2019-01-01 09:45:14 -05:00 committed by Brian Ashworth
parent 3b4cf3718b
commit a96e86744f

View File

@ -1017,7 +1017,7 @@ void output_render(struct sway_output *output, struct timespec *when,
if (fullscreen_con->view) { if (fullscreen_con->view) {
if (fullscreen_con->view->saved_buffer) { if (fullscreen_con->view->saved_buffer) {
render_saved_view(fullscreen_con->view, output, damage, 1.0f); render_saved_view(fullscreen_con->view, output, damage, 1.0f);
} else { } else if (fullscreen_con->view->surface) {
render_view_toplevels(fullscreen_con->view, render_view_toplevels(fullscreen_con->view,
output, damage, 1.0f); output, damage, 1.0f);
} }