OSDN Git Service

fix some FBO/texture queries (bug 15296)
authorBrian Paul <brian.paul@tungstengraphics.com>
Wed, 6 Aug 2008 14:39:54 +0000 (08:39 -0600)
committerBrian Paul <brian.paul@tungstengraphics.com>
Wed, 6 Aug 2008 14:40:25 +0000 (08:40 -0600)
src/mesa/main/fbobject.c

index 4190a95..680dc8e 100644 (file)
@@ -1513,7 +1513,12 @@ _mesa_GetFramebufferAttachmentParameterivEXT(GLenum target, GLenum attachment,
       return;
    case GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_EXT:
       if (att->Type == GL_TEXTURE) {
-        *params = GL_TEXTURE_CUBE_MAP_POSITIVE_X + att->CubeMapFace;
+         if (att->Texture && att->Texture->Target == GL_TEXTURE_CUBE_MAP) {
+            *params = GL_TEXTURE_CUBE_MAP_POSITIVE_X + att->CubeMapFace;
+         }
+         else {
+            *params = 0;
+         }
       }
       else {
         _mesa_error(ctx, GL_INVALID_ENUM,
@@ -1522,7 +1527,12 @@ _mesa_GetFramebufferAttachmentParameterivEXT(GLenum target, GLenum attachment,
       return;
    case GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT:
       if (att->Type == GL_TEXTURE) {
-        *params = att->Zoffset;
+         if (att->Texture && att->Texture->Target == GL_TEXTURE_3D) {
+            *params = att->Zoffset;
+         }
+         else {
+            *params = 0;
+         }
       }
       else {
         _mesa_error(ctx, GL_INVALID_ENUM,