From 0f2723cacbaf9b27ecb8d13581f4b72ff86dd911 Mon Sep 17 00:00:00 2001 From: Kristian Høgsberg Date: Fri, 7 Mar 2008 01:37:08 -0500 Subject: Simplify dri loading code by eliminating dlopen "cache". No need to jump through hoops to track __DRIdrivers and avoid dlopening the same .so more than twice, dlopen() does this internally. Besides, we were already bypassing this and dlopening drivers for each screen, whether or not they were already dlopened. --- src/glx/x11/glxext.c | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) (limited to 'src/glx/x11/glxext.c') diff --git a/src/glx/x11/glxext.c b/src/glx/x11/glxext.c index e07312214b..61352a6098 100644 --- a/src/glx/x11/glxext.c +++ b/src/glx/x11/glxext.c @@ -358,12 +358,7 @@ static void FreeScreenConfigs(__GLXdisplayPrivate *priv) Xfree((char*) psc->serverGLXexts); #ifdef GLX_DIRECT_RENDERING - /* Free the direct rendering per screen data */ - if (psc->driScreen.private) - (*psc->driScreen.destroyScreen)(&psc->driScreen); - psc->driScreen.private = NULL; - if (psc->drawHash) - __glxHashDestroy(psc->drawHash); + driDestroyScreen(psc); #endif } XFree((char*) priv->screenConfigs); @@ -394,10 +389,6 @@ static int __glXFreeDisplayPrivate(XExtData *extension) (*priv->driDisplay.destroyDisplay)(priv->dpy, priv->driDisplay.private); priv->driDisplay.private = NULL; - if (priv->driDisplay.createNewScreen) { - Xfree(priv->driDisplay.createNewScreen); /* free array of ptrs */ - priv->driDisplay.createNewScreen = NULL; - } #endif Xfree((char*) priv); -- cgit v1.2.3