Fix EGLImageKHR leak in wl_buffer destroy

dev
Kristian Høgsberg 14 years ago
parent 45115a435e
commit 98ffc93b95
  1. 1
      compositor/compositor.h
  2. 8
      compositor/drm.c

@ -121,6 +121,7 @@ struct wlsc_drm {
struct wlsc_buffer {
struct wl_buffer base;
struct wlsc_compositor *compositor;
int32_t width, height;
EGLImageKHR image;
struct wl_visual *visual;

@ -43,12 +43,9 @@ destroy_buffer(struct wl_resource *resource, struct wl_client *client)
{
struct wlsc_buffer *buffer =
container_of(resource, struct wlsc_buffer, base.base);
struct wlsc_compositor *compositor = buffer->compositor;
#if 0
/* FIXME: Need backlink to EGL display here */
eglDestroyImageKHR(ec->display, buffer->image);
#endif
eglDestroyImageKHR(compositor->display, buffer->image);
free(buffer);
}
@ -101,6 +98,7 @@ drm_create_buffer(struct wl_client *client, struct wl_drm *drm_base,
attribs[3] = height;
attribs[5] = stride / 4;
buffer->compositor = compositor;
buffer->width = width;
buffer->height = height;
buffer->visual = visual;

Loading…
Cancel
Save