Mesa (master): mesa: move the format and type check before select_tex_image ()

Brian Paul brianp at kemper.freedesktop.org
Sat Dec 24 15:01:12 UTC 2011


Module: Mesa
Branch: master
Commit: 26195c8417e710e919352ec6b4dfff83fdc178e2
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=26195c8417e710e919352ec6b4dfff83fdc178e2

Author: Jian Zhao <jian.j.zhao at intel.com>
Date:   Sat Dec 24 07:58:12 2011 -0700

mesa: move the format and type check before select_tex_image()

Move the format and type check before select_tex_image, or it will fail to
report the mismatch error if the teximage is null.

Reported-by: Anuj Phogat <anuj.phogat at gmail.com>
Signed-off-by: Jian Zhao <jian.j.zhao at intel.com>
Reviewed-by: Yuanhan Liu <yuanhan.liu at linux.intel.com>
Signed-off-by: Brian Paul <brianp at vmware.com>

---

 src/mesa/main/texgetimage.c |   12 ++++++------
 1 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/src/mesa/main/texgetimage.c b/src/mesa/main/texgetimage.c
index 3f24187..6ead871 100644
--- a/src/mesa/main/texgetimage.c
+++ b/src/mesa/main/texgetimage.c
@@ -702,12 +702,6 @@ getteximage_error_check(struct gl_context *ctx, GLenum target, GLint level,
       return GL_TRUE;
    }
 
-   texImage = _mesa_select_tex_image(ctx, texObj, target, level);
-   if (!texImage) {
-      /* out of memory */
-      return GL_TRUE;
-   }
-
    if (!_mesa_is_legal_format_and_type(ctx, format, type)) {
       /*GL_INVALID_OPERATION is generated by a format/type
        * mismatch (see the 1.2 spec page 94, sec 3.6.4.)
@@ -716,6 +710,12 @@ getteximage_error_check(struct gl_context *ctx, GLenum target, GLint level,
       return GL_TRUE;
    }
 
+   texImage = _mesa_select_tex_image(ctx, texObj, target, level);
+   if (!texImage) {
+      /* out of memory */
+      return GL_TRUE;
+   }
+
    baseFormat = _mesa_get_format_base_format(texImage->TexFormat);
       
    /* Make sure the requested image format is compatible with the




More information about the mesa-commit mailing list