xdg-shell: fix potential use-after-free

This commit is contained in:
Kirill Primak 2022-01-08 22:52:55 +03:00
parent c35d14ecfa
commit d2b36b7bd1
2 changed files with 2 additions and 0 deletions

View File

@ -331,6 +331,7 @@ void create_xdg_popup(struct wlr_xdg_surface *surface,
wl_resource_get_version(surface->resource), id);
if (surface->popup->resource == NULL) {
free(surface->popup);
surface->popup = NULL;
wl_resource_post_no_memory(surface->resource);
return;
}

View File

@ -475,6 +475,7 @@ void create_xdg_toplevel(struct wlr_xdg_surface *surface,
wl_resource_get_version(surface->resource), id);
if (surface->toplevel->resource == NULL) {
free(surface->toplevel);
surface->toplevel = NULL;
wl_resource_post_no_memory(surface->resource);
return;
}