summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBrian Paul <[email protected]>2010-05-27 13:05:23 -0600
committerBrian Paul <[email protected]>2010-05-27 13:11:08 -0600
commita504f2387e2bb47025c7406d9a466a042dc09e61 (patch)
tree883de60f2b5baadd4f5ef8d27237ccc5c7c4e18e
parent90e5a37d128efaca9e89434ab103826ee82cb911 (diff)
mesa: fix incorrect GL_DEPTH_STENCIL_ATTACHMENT format check
We want to check the incoming renderbuffer format, not the (potentially non-existant) current attachment. Fixes segfault w/ fbotexture -ds2. NOTE: this will be applied to the 7.8 branch too.
-rw-r--r--src/mesa/main/fbobject.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/mesa/main/fbobject.c b/src/mesa/main/fbobject.c
index bf445d2b299..bc4741b279d 100644
--- a/src/mesa/main/fbobject.c
+++ b/src/mesa/main/fbobject.c
@@ -1802,10 +1802,10 @@ _mesa_FramebufferRenderbufferEXT(GLenum target, GLenum attachment,
rb = NULL;
}
- if (attachment == GL_DEPTH_STENCIL_ATTACHMENT) {
+ if (attachment == GL_DEPTH_STENCIL_ATTACHMENT &&
+ rb && rb->Format != MESA_FORMAT_NONE) {
/* make sure the renderbuffer is a depth/stencil format */
- const GLenum baseFormat =
- _mesa_get_format_base_format(att->Renderbuffer->Format);
+ const GLenum baseFormat = _mesa_get_format_base_format(rb->Format);
if (baseFormat != GL_DEPTH_STENCIL) {
_mesa_error(ctx, GL_INVALID_OPERATION,
"glFramebufferRenderbufferEXT(renderbuffer"