summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKristian Høgsberg <krh@bitplanet.net>2010-06-15 13:07:01 -0400
committerKristian Høgsberg <krh@bitplanet.net>2010-06-15 13:28:38 -0400
commit80dfec3e53fd5b5c8c31fb16376c9910258c91b0 (patch)
treec62c8fb1fb8c07c10c0751ea946dde14e2a73d27
parent726f18ee695df2ac7656b2034d49fca4be98fb30 (diff)
mesa: Allow querying the system FBO in GetFramebufferAttachmentParameteriv
If the default framebuffer is bound to <target>, then <attachment> must be one of FRONT_LEFT, FRONT_RIGHT, BACK_LEFT, BACK_RIGHT, AUXi, DEPTH_BUFFER, or STENCIL_BUFFER, identifying a color buffer, the depth buffer, or the stencil buffer, and <pname> may be FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE or FRAMEBUFFER_ATTACHMENT_OBJECT_NAME. as well as these <pname> values FRAMEBUFFER_ATTACHMENT_RED_SIZE, FRAMEBUFFER_ATTACHMENT_GREEN_SIZE, FRAMEBUFFER_ATTACHMENT_BLUE_SIZE, FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE, FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE, FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE, FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE, or FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING. https://bugs.freedesktop.org/show_bug.cgi?id=28551
-rw-r--r--src/mesa/main/fbobject.c14
1 files changed, 8 insertions, 6 deletions
diff --git a/src/mesa/main/fbobject.c b/src/mesa/main/fbobject.c
index 1a2e9b1da6f..09fafbc8b9d 100644
--- a/src/mesa/main/fbobject.c
+++ b/src/mesa/main/fbobject.c
@@ -188,6 +188,14 @@ _mesa_get_attachment(GLcontext *ctx, struct gl_framebuffer *fb,
/* fall-through / new in GL 3.0 */
case GL_STENCIL_ATTACHMENT_EXT:
return &fb->Attachment[BUFFER_STENCIL];
+ case GL_FRONT_LEFT:
+ return &fb->Attachment[BUFFER_FRONT_LEFT];
+ case GL_FRONT_RIGHT:
+ return &fb->Attachment[BUFFER_FRONT_RIGHT];
+ case GL_BACK_LEFT:
+ return &fb->Attachment[BUFFER_BACK_LEFT];
+ case GL_BACK_RIGHT:
+ return &fb->Attachment[BUFFER_BACK_RIGHT];
default:
return NULL;
}
@@ -1877,12 +1885,6 @@ _mesa_GetFramebufferAttachmentParameterivEXT(GLenum target, GLenum attachment,
return;
}
- if (buffer->Name == 0) {
- _mesa_error(ctx, GL_INVALID_OPERATION,
- "glGetFramebufferAttachmentParameterivEXT");
- return;
- }
-
att = _mesa_get_attachment(ctx, buffer, attachment);
if (att == NULL) {
_mesa_error(ctx, GL_INVALID_ENUM,