glx: move dri2 loader extensions to static vtable
Reviewed-by: Adam Jackson <ajax@redhat.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30375>
This commit is contained in:

committed by
Marge Bot

parent
d723438e0d
commit
886af985f8
@@ -56,7 +56,6 @@
|
||||
|
||||
struct dri2_display
|
||||
{
|
||||
const __DRIextension *loader_extensions[5];
|
||||
};
|
||||
|
||||
struct dri2_drawable
|
||||
@@ -964,13 +963,18 @@ static const struct glx_screen_vtable dri2_screen_vtable = {
|
||||
.get_driver_name = dri2_get_driver_name,
|
||||
};
|
||||
|
||||
static const __DRIextension *loader_extensions[] = {
|
||||
&dri2LoaderExtension.base,
|
||||
&dri2UseInvalidate.base,
|
||||
&driBackgroundCallable.base,
|
||||
NULL
|
||||
};
|
||||
|
||||
struct glx_screen *
|
||||
dri2CreateScreen(int screen, struct glx_display * priv, bool driver_name_is_inferred)
|
||||
{
|
||||
const __DRIconfig **driver_configs;
|
||||
const __DRIextension **extensions;
|
||||
const struct dri2_display *const pdp = (struct dri2_display *)
|
||||
priv->dri2Display;
|
||||
struct dri2_screen *psc;
|
||||
__GLXDRIscreen *psp;
|
||||
struct glx_config *configs = NULL, *visuals = NULL;
|
||||
@@ -1036,7 +1040,7 @@ dri2CreateScreen(int screen, struct glx_display * priv, bool driver_name_is_infe
|
||||
|
||||
psc->driScreen =
|
||||
psc->dri2->createNewScreen3(screen, psc->fd,
|
||||
(const __DRIextension **)&pdp->loader_extensions[0],
|
||||
loader_extensions,
|
||||
extensions,
|
||||
&driver_configs, driver_name_is_inferred, psc);
|
||||
|
||||
@@ -1199,13 +1203,6 @@ dri2CreateDisplay(Display * dpy)
|
||||
if (pdp == NULL)
|
||||
return NULL;
|
||||
|
||||
|
||||
int i = 0;
|
||||
pdp->loader_extensions[i++] = &dri2LoaderExtension.base;
|
||||
pdp->loader_extensions[i++] = &dri2UseInvalidate.base;
|
||||
pdp->loader_extensions[i++] = &driBackgroundCallable.base;
|
||||
pdp->loader_extensions[i++] = NULL;
|
||||
|
||||
return (void*)pdp;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user