mesa: Mark FBOs with compressed color attachments as FBO-incomplete.
authorEric Anholt <eric@anholt.net>
Fri, 15 May 2009 23:24:59 +0000 (16:24 -0700)
committerEric Anholt <eric@anholt.net>
Fri, 15 May 2009 23:47:37 +0000 (16:47 -0700)
Both EXT_fbo and ARB_fbo agree on this.  Fixes a segfault in the metaops
mipmap generation in Intel for SGIS_generate_mipmap of S3TC textures in
Regnum Online.

Bug #21654.

src/mesa/main/fbobject.c

index 9c5a5908a2208a5c950ee30ff3ce0bfa9b79d6e4..dbd4c5848cc06911dcbec7fc4f678f0cda31ca4d 100644 (file)
@@ -368,6 +368,11 @@ test_attachment_completeness(const GLcontext *ctx, GLenum format,
             att->Complete = GL_FALSE;
             return;
          }
+         if (texImage->TexFormat->TexelBytes == 0) {
+            att_incomplete("compressed internalformat");
+            att->Complete = GL_FALSE;
+            return;
+         }
       }
       else if (format == GL_DEPTH) {
          if (texImage->TexFormat->BaseFormat == GL_DEPTH_COMPONENT) {