diff options
author | Adam Jackson <ajax@redhat.com> | 2013-10-31 18:39:22 -0400 |
---|---|---|
committer | Keith Packard <keithp@keithp.com> | 2013-10-31 17:05:14 -0700 |
commit | 17ed7ac1fe7426d66f688087c09da5ff1dbb41d3 (patch) | |
tree | 850a70ddce8f8f69789b60a93ead23702707992b | |
parent | 2eedf42c229e2251035d716a96b654222155cd51 (diff) |
glx: Lie about GLX_Y_INVERTED_EXT
Well, that was lame. The problem with reporting y inversion honestly is
that libGL asks the driver _its_ opinion of Y inversion, which it just
fabricates from whole cloth. So then when libGL goes to compare the
driver's idea of fbconfigs with that of the server - a fairly dumb idea
to begin with - nothing matches, and direct rendering fails, and
sadness.
So until the DRI drivers are fixed we should just continue to lie about
Y inversion. GLX_DONT_CARE is what libGL would make up for that
attribute if we hadn't sent it, so just send that instead.
Signed-off-by: Adam Jackson <ajax@redhat.com>
Tested-by: Keith Packard <keithp@keithp.com>
Signed-off-by: Keith Packard <keithp@keithp.com>
-rw-r--r-- | glx/glxcmds.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/glx/glxcmds.c b/glx/glxcmds.c index 64ebf9ecd..efa4aecb2 100644 --- a/glx/glxcmds.c +++ b/glx/glxcmds.c @@ -1118,7 +1118,8 @@ DoGetFBConfigs(__GLXclientState * cl, unsigned screen) WRITE_PAIR(GLX_BIND_TO_MIPMAP_TEXTURE_EXT, modes->bindToMipmapTexture); WRITE_PAIR(GLX_BIND_TO_TEXTURE_TARGETS_EXT, modes->bindToTextureTargets); - WRITE_PAIR(GLX_Y_INVERTED_EXT, modes->yInverted); + /* can't report honestly until mesa is fixed */ + WRITE_PAIR(GLX_Y_INVERTED_EXT, GLX_DONT_CARE); if (modes->drawableType & GLX_PBUFFER_BIT) { WRITE_PAIR(GLX_MAX_PBUFFER_WIDTH, modes->maxPbufferWidth); WRITE_PAIR(GLX_MAX_PBUFFER_HEIGHT, modes->maxPbufferHeight); |