From: Ander Conselvan de Oliveira Date: Wed, 16 Oct 2013 12:04:03 +0000 (+0300) Subject: wayland: Don't leak wl_drm global when unbinding display X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=98b359bd1b469af3b025a8fab5446aac8ce4c727;p=mesa.git wayland: Don't leak wl_drm global when unbinding display --- diff --git a/src/egl/wayland/wayland-drm/wayland-drm.c b/src/egl/wayland/wayland-drm/wayland-drm.c index 06bd18cf461..2f5acb217d1 100644 --- a/src/egl/wayland/wayland-drm/wayland-drm.c +++ b/src/egl/wayland/wayland-drm/wayland-drm.c @@ -41,6 +41,7 @@ struct wl_drm { struct wl_display *display; + struct wl_global *wl_drm_global; void *user_data; char *device_name; @@ -275,7 +276,9 @@ wayland_drm_init(struct wl_display *display, char *device_name, drm->buffer_interface.destroy = buffer_destroy; - wl_global_create(display, &wl_drm_interface, 2, drm, bind_drm); + drm->wl_drm_global = + wl_global_create(display, &wl_drm_interface, 2, + drm, bind_drm); return drm; } @@ -285,7 +288,7 @@ wayland_drm_uninit(struct wl_drm *drm) { free(drm->device_name); - /* FIXME: need wl_display_del_{object,global} */ + wl_global_destroy(drm->wl_drm_global); free(drm); }