glx: fix regression with copy sub buffer disappearing
So copy sub buffer isn't a core extensions it's a driver extension which means we are using totally the wrong interface to query for it here, which means bad things happen when you roll out this code, for instance MESA_copy_sub_buffer stops working. This is just the hack I'm sticking in Fedora to avoid the regression for now, but hopefully will inspire us. Reviewed-by: Adam Jackson <ajax@redhat.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
This commit is contained in:
parent
5e9457c41c
commit
6da3f5d04f
|
@ -396,6 +396,9 @@ initializeExtensions(__GLXDRIscreen * screen)
|
||||||
const __DRIextension **extensions;
|
const __DRIextension **extensions;
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
|
__glXEnableExtension(screen->glx_enable_bits, "GLX_MESA_copy_sub_buffer");
|
||||||
|
LogMessage(X_INFO, "AIGLX: enabled GLX_MESA_copy_sub_buffer\n");
|
||||||
|
|
||||||
if (screen->swrast->base.version >= 3) {
|
if (screen->swrast->base.version >= 3) {
|
||||||
__glXEnableExtension(screen->glx_enable_bits,
|
__glXEnableExtension(screen->glx_enable_bits,
|
||||||
"GLX_ARB_create_context");
|
"GLX_ARB_create_context");
|
||||||
|
@ -416,8 +419,6 @@ initializeExtensions(__GLXDRIscreen * screen)
|
||||||
if (strcmp(extensions[i]->name, __DRI_COPY_SUB_BUFFER) == 0) {
|
if (strcmp(extensions[i]->name, __DRI_COPY_SUB_BUFFER) == 0) {
|
||||||
screen->copySubBuffer =
|
screen->copySubBuffer =
|
||||||
(const __DRIcopySubBufferExtension *) extensions[i];
|
(const __DRIcopySubBufferExtension *) extensions[i];
|
||||||
__glXEnableExtension(screen->glx_enable_bits,
|
|
||||||
"GLX_MESA_copy_sub_buffer");
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (strcmp(extensions[i]->name, __DRI_TEX_BUFFER) == 0) {
|
if (strcmp(extensions[i]->name, __DRI_TEX_BUFFER) == 0) {
|
||||||
|
|
Loading…
Reference in New Issue