From 7f5a538cb73eb20fa37ff98161d45a3a383622aa Mon Sep 17 00:00:00 2001 From: emersion Date: Thu, 18 Jan 2018 14:50:30 +0100 Subject: [PATCH] rootston: fix segfault when rendering surface outside output --- rootston/output.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/rootston/output.c b/rootston/output.c index 027d8275..16a185af 100644 --- a/rootston/output.c +++ b/rootston/output.c @@ -72,7 +72,7 @@ static void render_surface(struct wlr_surface *surface, &output->damage); bool damaged = pixman_region32_not_empty(&surface_damage); if (!damaged) { - goto render_subsurfaces; + goto finish_surface_damage; } float transform[16]; @@ -131,9 +131,10 @@ static void render_surface(struct wlr_surface *surface, wlr_surface_send_frame_done(surface, when); -render_subsurfaces: +finish_surface_damage: pixman_region32_fini(&surface_damage); +render_subsurfaces:; struct wlr_subsurface *subsurface; wl_list_for_each(subsurface, &surface->subsurface_list, parent_link) { struct wlr_surface_state *state = subsurface->surface->current;