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.
This commit is contained in:
@@ -1802,10 +1802,10 @@ _mesa_FramebufferRenderbufferEXT(GLenum target, GLenum attachment,
|
|||||||
rb = NULL;
|
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 */
|
/* make sure the renderbuffer is a depth/stencil format */
|
||||||
const GLenum baseFormat =
|
const GLenum baseFormat = _mesa_get_format_base_format(rb->Format);
|
||||||
_mesa_get_format_base_format(att->Renderbuffer->Format);
|
|
||||||
if (baseFormat != GL_DEPTH_STENCIL) {
|
if (baseFormat != GL_DEPTH_STENCIL) {
|
||||||
_mesa_error(ctx, GL_INVALID_OPERATION,
|
_mesa_error(ctx, GL_INVALID_OPERATION,
|
||||||
"glFramebufferRenderbufferEXT(renderbuffer"
|
"glFramebufferRenderbufferEXT(renderbuffer"
|
||||||
|
Reference in New Issue
Block a user