Reviewed-by: Fredrik Höglund <fred...@kde.org> On Wednesday 04 March 2015, Laura Ekstrand wrote: > --- > src/mesa/main/fbobject.c | 49 > ++++++++++++++++++++++++------------------------ > 1 file changed, 25 insertions(+), 24 deletions(-) > > diff --git a/src/mesa/main/fbobject.c b/src/mesa/main/fbobject.c > index 3895328..5062033 100644 > --- a/src/mesa/main/fbobject.c > +++ b/src/mesa/main/fbobject.c > @@ -2565,34 +2565,35 @@ framebuffer_texture(struct gl_context *ctx, const > char *caller, GLenum target, > _mesa_tex_target_to_face(textarget) == > fb->Attachment[BUFFER_STENCIL].CubeMapFace && > zoffset == fb->Attachment[BUFFER_STENCIL].Zoffset) { > - /* The texture object is already attached to the stencil attachment > - * point. Don't create a new renderbuffer; just reuse the stencil > - * attachment's. This is required to prevent a GL error in > - * glGetFramebufferAttachmentParameteriv(GL_DEPTH_STENCIL). > - */ > - reuse_framebuffer_texture_attachment(fb, BUFFER_DEPTH, > - BUFFER_STENCIL); > + /* The texture object is already attached to the stencil attachment > + * point. Don't create a new renderbuffer; just reuse the stencil > + * attachment's. This is required to prevent a GL error in > + * glGetFramebufferAttachmentParameteriv(GL_DEPTH_STENCIL). > + */ > + reuse_framebuffer_texture_attachment(fb, BUFFER_DEPTH, > + BUFFER_STENCIL); > } else if (attachment == GL_STENCIL_ATTACHMENT && > - texObj == fb->Attachment[BUFFER_DEPTH].Texture && > + texObj == fb->Attachment[BUFFER_DEPTH].Texture && > level == fb->Attachment[BUFFER_DEPTH].TextureLevel && > _mesa_tex_target_to_face(textarget) == > fb->Attachment[BUFFER_DEPTH].CubeMapFace && > zoffset == fb->Attachment[BUFFER_DEPTH].Zoffset) { > - /* As above, but with depth and stencil transposed. */ > - reuse_framebuffer_texture_attachment(fb, BUFFER_STENCIL, > - BUFFER_DEPTH); > + /* As above, but with depth and stencil transposed. */ > + reuse_framebuffer_texture_attachment(fb, BUFFER_STENCIL, > + BUFFER_DEPTH); > } else { > - set_texture_attachment(ctx, fb, att, texObj, textarget, > - level, zoffset, layered); > - if (attachment == GL_DEPTH_STENCIL_ATTACHMENT) { > - /* Above we created a new renderbuffer and attached it to the > - * depth attachment point. Now attach it to the stencil attachment > - * point too. > - */ > - assert(att == &fb->Attachment[BUFFER_DEPTH]); > - reuse_framebuffer_texture_attachment(fb,BUFFER_STENCIL, > - BUFFER_DEPTH); > - } > + set_texture_attachment(ctx, fb, att, texObj, textarget, > + level, zoffset, layered); > + > + if (attachment == GL_DEPTH_STENCIL_ATTACHMENT) { > + /* Above we created a new renderbuffer and attached it to the > + * depth attachment point. Now attach it to the stencil > attachment > + * point too. > + */ > + assert(att == &fb->Attachment[BUFFER_DEPTH]); > + reuse_framebuffer_texture_attachment(fb,BUFFER_STENCIL, > + BUFFER_DEPTH); > + } > } > > /* Set the render-to-texture flag. We'll check this flag in > @@ -2608,8 +2609,8 @@ framebuffer_texture(struct gl_context *ctx, const char > *caller, GLenum target, > else { > remove_attachment(ctx, att); > if (attachment == GL_DEPTH_STENCIL_ATTACHMENT) { > - assert(att == &fb->Attachment[BUFFER_DEPTH]); > - remove_attachment(ctx, &fb->Attachment[BUFFER_STENCIL]); > + assert(att == &fb->Attachment[BUFFER_DEPTH]); > + remove_attachment(ctx, &fb->Attachment[BUFFER_STENCIL]); > } > } > >
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev