summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEduardo Lima Mitev <elima@igalia.com>2015-07-23 16:25:21 +0200
committerEduardo Lima Mitev <elima@igalia.com>2015-07-23 16:31:14 +0200
commitb469cf10efd4734038dcab294f23ca38e9fc7a97 (patch)
treefea52117f3c07d0875796c351287350aec820fde
parenta3b53beaa0351cf1322c6e1a580dc7cc3d0cad0c (diff)
mesa: Fix error in target validation of glCompressedTex(ture)SubImage3D() calls
Basically, two different target error checks are chained consecutively, and the second one is executed regardless the result of the first one. This produces an incorrect error if the first check fails but is overrided by the second. This patch conditions the execution of the second check to a successful pass of the first one. Fixes 1 dEQP test: * dEQP-GLES3.functional.negative_api.texture.compressedtexsubimage3d Reviewed-by: Laura Ekstrand <laura@jlekstrand.net>
-rw-r--r--src/mesa/main/teximage.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/mesa/main/teximage.c b/src/mesa/main/teximage.c
index 3b309abbe14..cd451138b1c 100644
--- a/src/mesa/main/teximage.c
+++ b/src/mesa/main/teximage.c
@@ -4586,7 +4586,8 @@ compressed_subtexture_target_check(struct gl_context *ctx, GLenum target,
* are valid here, which they are not, but of course not mentioned by
* core spec.
*/
- if (target != GL_TEXTURE_2D_ARRAY && target != GL_TEXTURE_CUBE_MAP_ARRAY) {
+ if (targetOK && target != GL_TEXTURE_2D_ARRAY &&
+ target != GL_TEXTURE_CUBE_MAP_ARRAY) {
bool invalidformat;
switch (format) {
/* These came from _mesa_is_compressed_format in glformats.c. */