summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPauli Nieminen <pauli.nieminen@linux.intel.com>2012-06-09 03:12:01 +0300
committerPauli Nieminen <pauli.nieminen@linux.intel.com>2012-06-10 00:26:26 +0300
commit7620b79c373f4d6ea9ec3418e065e08639fc34cb (patch)
treeb1adcf430c93a303f7e30214d125a5ca0519fa94
parent71d6f01ea1c6137e381fe7e506ab9a347f87fd9c (diff)
meta: texture rectangle textures may not have mipmaps
Avoid INVALID_OPERATION error if decompressing rectangle texture. Setting mipmap level limits for those textures is error that must not be hit by meta code to mislead user. Signed-off-by: Pauli Nieminen <pauli.nieminen@linux.intel.com>
-rw-r--r--src/mesa/drivers/common/meta.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/mesa/drivers/common/meta.c b/src/mesa/drivers/common/meta.c
index c8dd80aa48..6fe1fac2b3 100644
--- a/src/mesa/drivers/common/meta.c
+++ b/src/mesa/drivers/common/meta.c
@@ -3323,8 +3323,10 @@ decompress_texture_image(struct gl_context *ctx,
const GLenum srgbSave = texObj->Sampler.sRGBDecode;
/* restrict sampling to the texture level of interest */
- _mesa_TexParameteri(target, GL_TEXTURE_BASE_LEVEL, texImage->Level);
- _mesa_TexParameteri(target, GL_TEXTURE_MAX_LEVEL, texImage->Level);
+ if (target != GL_TEXTURE_RECTANGLE_ARB) {
+ _mesa_TexParameteri(target, GL_TEXTURE_BASE_LEVEL, texImage->Level);
+ _mesa_TexParameteri(target, GL_TEXTURE_MAX_LEVEL, texImage->Level);
+ }
/* nearest filtering */
_mesa_TexParameteri(target, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
_mesa_TexParameteri(target, GL_TEXTURE_MAG_FILTER, GL_NEAREST);