diff options
author | Kristian Høgsberg <[email protected]> | 2007-05-11 16:11:23 -0400 |
---|---|---|
committer | Kristian Høgsberg <[email protected]> | 2007-10-10 18:00:13 -0400 |
commit | aac367f48afc62176faf67aa6f329fbeae2004b4 (patch) | |
tree | 9afce18cf316c930ca764e27caeadb2b0fb2f0be /include/GL/internal/dri_interface.h | |
parent | fa72013adaab4d0755e852805e2e44d1a879a204 (diff) |
Remove screenConfigs from __DRIscreen.
The screenConfigs field of __DRIscreen points back to the containing
__GLXscreenConfigs struct. This is a serious abstraction violation; it
assumes that the loader is libGL and that there *is* a __GLXscreenConfigs
type in the loader.
Using the containerOf macro, we can get from the __DRIscreen pointer to
the containing __GLXscreenConfigs struct, at a place in the stack
where the above is a valid assumption. Besides, the __DRI* structs shouldn't
hold state other than the private pointer.
Diffstat (limited to 'include/GL/internal/dri_interface.h')
-rw-r--r-- | include/GL/internal/dri_interface.h | 13 |
1 files changed, 2 insertions, 11 deletions
diff --git a/include/GL/internal/dri_interface.h b/include/GL/internal/dri_interface.h index 9cb5920aa01..752dd417dcc 100644 --- a/include/GL/internal/dri_interface.h +++ b/include/GL/internal/dri_interface.h @@ -87,7 +87,8 @@ typedef const char * (* PFNGLXGETDRIVERCONFIGPROC) (const char *driverName); * \c __DRIinterfaceMethods::getProcAddress. This function is used to enable * a GLX extension on the specified screen. */ -typedef void (* PFNGLXSCRENABLEEXTENSIONPROC) ( void *psc, const char * name ); +typedef void (* PFNGLXSCRENABLEEXTENSIONPROC) (__DRIscreen *screen, + const char *name); /*@}*/ @@ -300,16 +301,6 @@ struct __DRIscreenRec { int (*getMSC)( void *screenPrivate, int64_t *msc ); /** - * Opaque pointer that points back to the containing - * \c __GLXscreenConfigs. This data structure is shared with DRI drivers - * but \c __GLXscreenConfigs is not. However, they are needed by some GLX - * functions called by DRI drivers. - * - * \since Internal API version 20030813. - */ - void *screenConfigs; - - /** * Functions associated with MESA_allocate_memory. * * \since Internal API version 20030815. |