diff options
author | Kristian Høgsberg <[email protected]> | 2008-03-07 01:37:08 -0500 |
---|---|---|
committer | Kristian Høgsberg <[email protected]> | 2008-03-08 16:19:39 -0500 |
commit | 0f2723cacbaf9b27ecb8d13581f4b72ff86dd911 (patch) | |
tree | 38abc6f5fd165fc49650a69e4d783ff0e7f2ad9f /src/glx/x11/glxclient.h | |
parent | 890d44e54f2c800f066f59eb074ad09e14d54483 (diff) |
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.
Diffstat (limited to 'src/glx/x11/glxclient.h')
-rw-r--r-- | src/glx/x11/glxclient.h | 22 |
1 files changed, 2 insertions, 20 deletions
diff --git a/src/glx/x11/glxclient.h b/src/glx/x11/glxclient.h index a1fff0a65cc..e62eec822e8 100644 --- a/src/glx/x11/glxclient.h +++ b/src/glx/x11/glxclient.h @@ -103,24 +103,6 @@ struct __DRIdisplayRec { * \c NULL if direct rendering is not supported on this display. */ struct __DRIdisplayPrivateRec *private; - - /** - * Array of pointers to methods to create and initialize the private DRI - * screen data. - */ - PFNCREATENEWSCREENFUNC * createNewScreen; -}; - - -/* -** We keep a linked list of these structures, one per DRI device driver. -*/ -struct __DRIdriverRec { - const char *name; - const char *libpath; - void *handle; - PFNCREATENEWSCREENFUNC createNewScreenFunc; - struct __DRIdriverRec *next; }; /* @@ -130,8 +112,7 @@ struct __DRIdriverRec { extern void *driCreateDisplay(Display *dpy, __DRIdisplay *pdisp); extern void driCreateScreen(__GLXscreenConfigs *psc, int screen, __GLXdisplayPrivate *priv); - -extern __DRIdriver *driGetDriver(Display *dpy, int scrNum); +extern void driDestroyScreen(__GLXscreenConfigs *psc); extern void DRI_glXUseXFont( Font font, int first, int count, int listbase ); @@ -458,6 +439,7 @@ struct __GLXscreenConfigsRec { __glxHashTable *drawHash; Display *dpy; int scr; + void *driver; #ifdef __DRI_COPY_SUB_BUFFER __DRIcopySubBufferExtension *copySubBuffer; |