From 7b4f233c1f80f2f6f80c19137328a54f06cbc37c Mon Sep 17 00:00:00 2001 From: Michael Varga Date: Mon, 27 Oct 2014 10:43:20 -0500 Subject: st/va: added some calls to handle_table_remove() In a few locations handles were being added but not removed. Signed-off-by: Michael Varga --- src/gallium/state_trackers/va/buffer.c | 1 + src/gallium/state_trackers/va/context.c | 1 + src/gallium/state_trackers/va/image.c | 1 + 3 files changed, 3 insertions(+) diff --git a/src/gallium/state_trackers/va/buffer.c b/src/gallium/state_trackers/va/buffer.c index 4023c327629..8f9ba440a75 100644 --- a/src/gallium/state_trackers/va/buffer.c +++ b/src/gallium/state_trackers/va/buffer.c @@ -131,6 +131,7 @@ vlVaDestroyBuffer(VADriverContextP ctx, VABufferID buf_id) FREE(buf->data); FREE(buf); + handle_table_remove(VL_VA_DRIVER(ctx)->htab, buf_id); return VA_STATUS_SUCCESS; } diff --git a/src/gallium/state_trackers/va/context.c b/src/gallium/state_trackers/va/context.c index ae87d3b2b15..a7a55f96139 100644 --- a/src/gallium/state_trackers/va/context.c +++ b/src/gallium/state_trackers/va/context.c @@ -212,6 +212,7 @@ vlVaDestroyContext(VADriverContextP ctx, VAContextID context_id) } context->decoder->destroy(context->decoder); FREE(context); + handle_table_remove(drv->htab, context_id); return VA_STATUS_SUCCESS; } diff --git a/src/gallium/state_trackers/va/image.c b/src/gallium/state_trackers/va/image.c index cd4044a1a76..a30155e26c9 100644 --- a/src/gallium/state_trackers/va/image.c +++ b/src/gallium/state_trackers/va/image.c @@ -171,6 +171,7 @@ vlVaDestroyImage(VADriverContextP ctx, VAImageID image) if (!vaimage) return VA_STATUS_ERROR_INVALID_IMAGE; + handle_table_remove(VL_VA_DRIVER(ctx)->htab, image); return vlVaDestroyBuffer(ctx, vaimage->buf); } -- cgit v1.2.3