X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=src%2Fglx%2Fg_glxglvnddispatchfuncs.c;h=5b65afc86021143f2626a803760d92263d170a20;hb=ff45649bc2fc3b048a8ae19cd67ec1e8e8eeb7a8;hp=b5e33981ade55f6ac90f4402f3ef5e915c98dbe2;hpb=8bca8d89ef3babbecc4f3160cbbcb93d33b7a6ee;p=mesa.git diff --git a/src/glx/g_glxglvnddispatchfuncs.c b/src/glx/g_glxglvnddispatchfuncs.c index b5e33981ade..5b65afc8602 100644 --- a/src/glx/g_glxglvnddispatchfuncs.c +++ b/src/glx/g_glxglvnddispatchfuncs.c @@ -4,6 +4,7 @@ */ #include +#include "glxclient.h" #include "glxglvnd.h" #include "glxglvnddispatchfuncs.h" #include "g_glxglvnddispatchindices.h" @@ -50,6 +51,7 @@ const char * const __glXDispatchTableStrings[DI_LAST_INDEX] = { __ATTRIB(GetCurrentDisplayEXT), // glXGetCurrentDrawable implemented by libglvnd // glXGetCurrentReadDrawable implemented by libglvnd + __ATTRIB(GetDriverConfig), // glXGetFBConfigAttrib implemented by libglvnd __ATTRIB(GetFBConfigAttribSGIX), __ATTRIB(GetFBConfigFromVisualSGIX), @@ -334,6 +336,21 @@ static Display *dispatch_GetCurrentDisplayEXT(void) +static const char *dispatch_GetDriverConfig(const char *driverName) +{ +#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL) + /* + * The options are constant for a given driverName, so we do not need + * a context (and apps expect to be able to call this without one). + */ + return glXGetDriverConfig(driverName); +#else + return NULL; +#endif +} + + + static int dispatch_GetFBConfigAttribSGIX(Display *dpy, GLXFBConfigSGIX config, int attribute, int *value_return) { @@ -939,6 +956,7 @@ const void * const __glXDispatchFunctions[DI_LAST_INDEX + 1] = { __ATTRIB(DestroyGLXPbufferSGIX), __ATTRIB(GetContextIDEXT), __ATTRIB(GetCurrentDisplayEXT), + __ATTRIB(GetDriverConfig), __ATTRIB(GetFBConfigAttribSGIX), __ATTRIB(GetFBConfigFromVisualSGIX), __ATTRIB(GetMscRateOML),