subsurface: handle NULL parent in get_root_surface

master
Isaac Freund 4 years ago committed by Simon Ser
parent ad4dae0844
commit f6fc4c2883

@ -220,7 +220,8 @@ struct wlr_subsurface *wlr_subsurface_create(struct wlr_surface *surface,
struct wl_list *resource_list);
/**
* Get the root of the subsurface tree for this surface.
* Get the root of the subsurface tree for this surface. Can return NULL if
* a surface in the tree has been destroyed.
*/
struct wlr_surface *wlr_surface_get_root_surface(struct wlr_surface *surface);

@ -1061,6 +1061,9 @@ struct wlr_surface *wlr_surface_get_root_surface(struct wlr_surface *surface) {
if (subsurface == NULL) {
break;
}
if (subsurface->parent == NULL) {
return NULL;
}
surface = subsurface->parent;
}
return surface;

Loading…
Cancel
Save