diff options
author | Kristian Høgsberg <[email protected]> | 2010-07-19 16:45:23 -0400 |
---|---|---|
committer | Kristian Høgsberg <[email protected]> | 2010-07-19 22:45:50 -0400 |
commit | 70887d517290060a80c7f5dd8c0ea0c834c4d91e (patch) | |
tree | 382324fe11facbb2ec4258e79001977272f8fe62 /src/glx/drisw_glx.c | |
parent | 089fc37c6fa158824279e08e3b378ced94d6f803 (diff) |
glx: Move __driScreen into the dri screen privates
Diffstat (limited to 'src/glx/drisw_glx.c')
-rw-r--r-- | src/glx/drisw_glx.c | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/src/glx/drisw_glx.c b/src/glx/drisw_glx.c index d403b235372..e9a88e6db0c 100644 --- a/src/glx/drisw_glx.c +++ b/src/glx/drisw_glx.c @@ -44,7 +44,8 @@ struct drisw_screen { __GLXscreenConfigs base; - __GLXDRIscreen driScreen; + __DRIscreen *driScreen; + __GLXDRIscreen vtable; const __DRIcoreExtension *core; const __DRIswrastExtension *swrast; void *driver; @@ -290,7 +291,7 @@ driCreateContext(__GLXscreenConfigs *base, pcp->psc = &psc->base; pcp->driContext = - (*psc->core->createNewContext) (psc->base.__driScreen, + (*psc->core->createNewContext) (psc->driScreen, config->driConfig, shared, pcp); if (pcp->driContext == NULL) { Xfree(pcp); @@ -344,7 +345,7 @@ driCreateDrawable(__GLXscreenConfigs *base, XID xDrawable, /* Create a new drawable */ pdraw->driDrawable = - (*swrast->createNewDrawable) (psc->base.__driScreen, + (*swrast->createNewDrawable) (psc->driScreen, config->driConfig, pdp); if (!pdraw->driDrawable) { @@ -380,8 +381,8 @@ driDestroyScreen(__GLXscreenConfigs *base) struct drisw_screen *psc = (struct drisw_screen *) base; /* Free the direct rendering per screen data */ - (*psc->core->destroyScreen) (psc->base.__driScreen); - psc->base.__driScreen = NULL; + (*psc->core->destroyScreen) (psc->driScreen); + psc->driScreen = NULL; if (psc->driver) dlclose(psc->driver); } @@ -439,15 +440,15 @@ driCreateScreen(int screen, __GLXdisplayPrivate *priv) goto handle_error; } - psc->base.__driScreen = + psc->driScreen = psc->swrast->createNewScreen(screen, loader_extensions, &driver_configs, psc); - if (psc->base.__driScreen == NULL) { + if (psc->driScreen == NULL) { ErrorMessageF("failed to create dri screen\n"); goto handle_error; } - extensions = psc->core->getExtensions(psc->base.__driScreen); + extensions = psc->core->getExtensions(psc->driScreen); driBindCommonExtensions(&psc->base, extensions); psc->base.configs = @@ -457,7 +458,7 @@ driCreateScreen(int screen, __GLXdisplayPrivate *priv) psc->base.driver_configs = driver_configs; - psp = &psc->driScreen; + psp = &psc->vtable; psc->base.driScreen = psp; psp->destroyScreen = driDestroyScreen; psp->createContext = driCreateContext; |