Module: Mesa
Branch: master
Commit: 98b359bd1b469af3b025a8fab5446aac8ce4c727
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=98b359bd1b469af3b025a8fab5446aac8ce4c727

Author: Ander Conselvan de Oliveira <[email protected]>
Date:   Wed Oct 16 15:04:03 2013 +0300

wayland: Don't leak wl_drm global when unbinding display

---

 src/egl/wayland/wayland-drm/wayland-drm.c |    7 +++++--
 1 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/src/egl/wayland/wayland-drm/wayland-drm.c 
b/src/egl/wayland/wayland-drm/wayland-drm.c
index 06bd18c..2f5acb2 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);
 }

_______________________________________________
mesa-commit mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/mesa-commit

Reply via email to