glx/dri: only report DRI2 extensions when DRI2 is enabled.
Fixes bug 15477
This commit is contained in:
parent
e81ba58bf4
commit
4fab47b13c
|
@ -308,7 +308,7 @@ static __GLXDRIscreen *dri2CreateScreen(__GLXscreenConfigs *psc, int screen,
|
|||
return NULL;
|
||||
}
|
||||
|
||||
driBindExtensions(psc);
|
||||
driBindExtensions(psc, 1);
|
||||
|
||||
psc->configs = driConvertConfigs(psc->core, psc->configs, driver_configs);
|
||||
psc->visuals = driConvertConfigs(psc->core, psc->visuals, driver_configs);
|
||||
|
|
|
@ -329,7 +329,7 @@ driConvertConfigs(const __DRIcoreExtension *core,
|
|||
}
|
||||
|
||||
_X_HIDDEN void
|
||||
driBindExtensions(__GLXscreenConfigs *psc)
|
||||
driBindExtensions(__GLXscreenConfigs *psc, int dri2)
|
||||
{
|
||||
const __DRIextension **extensions;
|
||||
int i;
|
||||
|
@ -386,7 +386,7 @@ driBindExtensions(__GLXscreenConfigs *psc)
|
|||
#endif
|
||||
|
||||
#ifdef __DRI_TEX_BUFFER
|
||||
if (strcmp(extensions[i]->name, __DRI_TEX_BUFFER) == 0) {
|
||||
if ((strcmp(extensions[i]->name, __DRI_TEX_BUFFER) == 0) && dri2) {
|
||||
psc->texBuffer = (__DRItexBufferExtension *) extensions[i];
|
||||
__glXEnableDirectExtension(psc, "GLX_EXT_texture_from_pixmap");
|
||||
}
|
||||
|
|
|
@ -55,6 +55,6 @@ extern void ErrorMessageF(const char *f, ...);
|
|||
|
||||
extern void *driOpenDriver(const char *driverName);
|
||||
|
||||
extern void driBindExtensions(__GLXscreenConfigs *psc);
|
||||
extern void driBindExtensions(__GLXscreenConfigs *psc, int dri2);
|
||||
|
||||
#endif /* _DRI_COMMON_H */
|
||||
|
|
|
@ -635,7 +635,7 @@ static __GLXDRIscreen *driCreateScreen(__GLXscreenConfigs *psc, int screen,
|
|||
return NULL;
|
||||
}
|
||||
|
||||
driBindExtensions(psc);
|
||||
driBindExtensions(psc, 0);
|
||||
|
||||
psp->destroyScreen = driDestroyScreen;
|
||||
psp->createContext = driCreateContext;
|
||||
|
|
|
@ -390,7 +390,7 @@ static __GLXDRIscreen *driCreateScreen(__GLXscreenConfigs *psc, int screen,
|
|||
goto handle_error;
|
||||
}
|
||||
|
||||
driBindExtensions(psc);
|
||||
driBindExtensions(psc, 0);
|
||||
|
||||
psc->configs = driConvertConfigs(psc->core, psc->configs, driver_configs);
|
||||
psc->visuals = driConvertConfigs(psc->core, psc->visuals, driver_configs);
|
||||
|
|
Loading…
Reference in New Issue