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

Author: Kristian Høgsberg <[email protected]>
Date:   Mon May 24 16:56:12 2010 -0400

mesa: Reenable check for GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT

The check was disabled when FEATURE_OES_framebuffer_object was enabled,
since that used to mean we weren't implementing regular OpenGL semantics.
Now that we can compile in support for multiple APIs, change the #ifdef to
compile the check in when FEATURE_GL is enabled and enable the check for
contexts that implement OpenGL at runtime.

---

 src/mesa/main/fbobject.c |   44 +++++++++++++++++++++++---------------------
 1 files changed, 23 insertions(+), 21 deletions(-)

diff --git a/src/mesa/main/fbobject.c b/src/mesa/main/fbobject.c
index 2376e7f..bf445d2 100644
--- a/src/mesa/main/fbobject.c
+++ b/src/mesa/main/fbobject.c
@@ -629,30 +629,32 @@ _mesa_test_framebuffer_completeness(GLcontext *ctx, 
struct gl_framebuffer *fb)
       }
    }
 
-#if !FEATURE_OES_framebuffer_object
-   /* Check that all DrawBuffers are present */
-   for (j = 0; j < ctx->Const.MaxDrawBuffers; j++) {
-      if (fb->ColorDrawBuffer[j] != GL_NONE) {
-         const struct gl_renderbuffer_attachment *att
-            = _mesa_get_attachment(ctx, fb, fb->ColorDrawBuffer[j]);
-         assert(att);
-         if (att->Type == GL_NONE) {
-            fb->_Status = GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT;
-            fbo_incomplete("missing drawbuffer", j);
-            return;
-         }
+#if FEATURE_GL
+   if (ctx->API == API_OPENGL) {
+      /* Check that all DrawBuffers are present */
+      for (j = 0; j < ctx->Const.MaxDrawBuffers; j++) {
+        if (fb->ColorDrawBuffer[j] != GL_NONE) {
+           const struct gl_renderbuffer_attachment *att
+              = _mesa_get_attachment(ctx, fb, fb->ColorDrawBuffer[j]);
+           assert(att);
+           if (att->Type == GL_NONE) {
+              fb->_Status = GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT;
+              fbo_incomplete("missing drawbuffer", j);
+              return;
+           }
+        }
       }
-   }
 
-   /* Check that the ReadBuffer is present */
-   if (fb->ColorReadBuffer != GL_NONE) {
-      const struct gl_renderbuffer_attachment *att
-         = _mesa_get_attachment(ctx, fb, fb->ColorReadBuffer);
-      assert(att);
-      if (att->Type == GL_NONE) {
-         fb->_Status = GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT;
+      /* Check that the ReadBuffer is present */
+      if (fb->ColorReadBuffer != GL_NONE) {
+        const struct gl_renderbuffer_attachment *att
+           = _mesa_get_attachment(ctx, fb, fb->ColorReadBuffer);
+        assert(att);
+        if (att->Type == GL_NONE) {
+           fb->_Status = GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT;
             fbo_incomplete("missing readbuffer", -1);
-         return;
+           return;
+        }
       }
    }
 #else

_______________________________________________
mesa-commit mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/mesa-commit

Reply via email to