From: José Fonseca Date: Fri, 10 May 2013 12:47:04 +0000 (+0100) Subject: glxtrace: Fix glXBindTexImageEXT on NVIDIA. X-Git-Url: https://git.cworth.org/git?a=commitdiff_plain;h=a24fe0c912743e7c658d6e28ae737692351f6634;p=apitrace glxtrace: Fix glXBindTexImageEXT on NVIDIA. --- diff --git a/wrappers/glxtrace.py b/wrappers/glxtrace.py index d611d0b..568eb1a 100644 --- a/wrappers/glxtrace.py +++ b/wrappers/glxtrace.py @@ -110,6 +110,17 @@ class GlxTracer(GlTracer): GLint level = 0; GLint internalformat = GL_NONE; _glGetTexLevelParameteriv(target, level, GL_TEXTURE_INTERNAL_FORMAT, &internalformat); + // XXX: GL_TEXTURE_INTERNAL_FORMAT cannot be trusted on NVIDIA + // -- it sometimes returns GL_BGRA, even though GL_BGR/BGRA is + // not a valid internal format. + switch (internalformat) { + case GL_BGR: + internalformat = GL_RGB; + break; + case GL_BGRA: + internalformat = GL_RGBA; + break; + } GLint width = 0; _glGetTexLevelParameteriv(target, level, GL_TEXTURE_WIDTH, &width); GLint height = 0;