mirror of
https://github.com/hyprwm/wlroots-hyprland.git
synced 2024-11-26 22:55:58 +01:00
rootston: fix segfault when rendering surface outside output
This commit is contained in:
parent
5017d7f762
commit
7f5a538cb7
1 changed files with 3 additions and 2 deletions
|
@ -72,7 +72,7 @@ static void render_surface(struct wlr_surface *surface,
|
||||||
&output->damage);
|
&output->damage);
|
||||||
bool damaged = pixman_region32_not_empty(&surface_damage);
|
bool damaged = pixman_region32_not_empty(&surface_damage);
|
||||||
if (!damaged) {
|
if (!damaged) {
|
||||||
goto render_subsurfaces;
|
goto finish_surface_damage;
|
||||||
}
|
}
|
||||||
|
|
||||||
float transform[16];
|
float transform[16];
|
||||||
|
@ -131,9 +131,10 @@ static void render_surface(struct wlr_surface *surface,
|
||||||
|
|
||||||
wlr_surface_send_frame_done(surface, when);
|
wlr_surface_send_frame_done(surface, when);
|
||||||
|
|
||||||
render_subsurfaces:
|
finish_surface_damage:
|
||||||
pixman_region32_fini(&surface_damage);
|
pixman_region32_fini(&surface_damage);
|
||||||
|
|
||||||
|
render_subsurfaces:;
|
||||||
struct wlr_subsurface *subsurface;
|
struct wlr_subsurface *subsurface;
|
||||||
wl_list_for_each(subsurface, &surface->subsurface_list, parent_link) {
|
wl_list_for_each(subsurface, &surface->subsurface_list, parent_link) {
|
||||||
struct wlr_surface_state *state = subsurface->surface->current;
|
struct wlr_surface_state *state = subsurface->surface->current;
|
||||||
|
|
Loading…
Reference in a new issue