summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChad Versace <chad.versace@linux.intel.com>2012-01-13 10:26:01 -0800
committerChad Versace <chad.versace@linux.intel.com>2012-01-13 10:26:01 -0800
commite13c99a0043854cb286c773faa891a3115cd0a68 (patch)
tree4e431f77434571eeeef2f7e1dea31cad832894df
parent9462b8447864c754252cd2580c9e1e4d36d5cc63 (diff)
i965: Comment gen6_hiz_get_framebuffer_enum()
Make the comments precise. Explain why each branch is needed and correct. Document the potential pitfall in the true-branch. Signed-off-by: Chad Versace <chad.versace@linux.intel.com>
-rw-r--r--src/mesa/drivers/dri/i965/gen6_hiz.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/mesa/drivers/dri/i965/gen6_hiz.c b/src/mesa/drivers/dri/i965/gen6_hiz.c
index 92b1d61ef44..4d36729e7c5 100644
--- a/src/mesa/drivers/dri/i965/gen6_hiz.c
+++ b/src/mesa/drivers/dri/i965/gen6_hiz.c
@@ -114,14 +114,16 @@ gen6_hiz_get_framebuffer_enum(struct gl_context *ctx,
GLenum *bind_enum,
GLenum *get_enum)
{
- /* If the blit framebuffer extension isn't supported then Mesa will
- report an error if we try to bind GL_DRAW_FRAMEBUFFER. However in
- that case it should be safe to just save and restore
- GL_FRAMEBUFFER instead. */
if (ctx->Extensions.EXT_framebuffer_blit && ctx->API == API_OPENGL) {
+ /* Different buffers may be bound to GL_DRAW_FRAMEBUFFER and
+ * GL_READ_FRAMEBUFFER. Take care to not disrupt the read buffer.
+ */
*bind_enum = GL_DRAW_FRAMEBUFFER;
*get_enum = GL_DRAW_FRAMEBUFFER_BINDING;
} else {
+ /* The enums GL_DRAW_FRAMEBUFFER and GL_READ_FRAMEBUFFER do not exist.
+ * The bound framebuffer is both the read and draw buffer.
+ */
*bind_enum = GL_FRAMEBUFFER;
*get_enum = GL_FRAMEBUFFER_BINDING;
}