From 16887d042a917fa4773e4d853f50051b54e9948c Mon Sep 17 00:00:00 2001 From: Kristian Høgsberg Date: Fri, 27 Aug 2010 12:40:11 -0400 Subject: glx: Drop broken drawable garbage collection Doesn't work for pixmaps, was looking up the GLX XID and was never thread safe. Instead, just destroy the client side structures when the drawable is no long current for a context. --- src/glx/drisw_glx.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/glx/drisw_glx.c') diff --git a/src/glx/drisw_glx.c b/src/glx/drisw_glx.c index c5b179157b3..237ce176176 100644 --- a/src/glx/drisw_glx.c +++ b/src/glx/drisw_glx.c @@ -250,8 +250,6 @@ drisw_destroy_context(struct glx_context *context) if (context->extensions) XFree((char *) context->extensions); - GarbageCollectDRIDrawables(context->psc); - (*psc->core->destroyContext) (pcp->driContext); Xfree(pcp); @@ -285,6 +283,8 @@ drisw_unbind_context(struct glx_context *context, struct glx_context *new) struct drisw_screen *psc = (struct drisw_screen *) pcp->base.psc; (*psc->core->unbindContext) (pcp->driContext); + + driReleaseDrawables(&pcp->base); } static const struct glx_context_vtable drisw_context_vtable = { -- cgit v1.2.3