Mesa (master): mesa: Generate a renderbuffer wrapper even if the texture has no image

Ian Romanick idr at kemper.freedesktop.org
Tue Aug 6 19:19:10 UTC 2013


Module: Mesa
Branch: master
Commit: 2f9fe2d80a35b8857682771fddbee628213da7b3
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=2f9fe2d80a35b8857682771fddbee628213da7b3

Author: Ian Romanick <ian.d.romanick at intel.com>
Date:   Sun Jul 28 13:08:27 2013 -0700

mesa: Generate a renderbuffer wrapper even if the texture has no image

This prevents a segfault in check_begin_texture_render when an FBO is
rebound while in this state.  This fixes the piglit test
fbo-incomplete-invalid-texture.

Signed-off-by: Ian Romanick <ian.d.romanick at intel.com>
Acked-by: Kenneth Graunke <kenneth at whitecape.org>
Cc: "9.1 9.2" mesa-stable at lists.freedesktop.org

---

 src/mesa/main/fbobject.c |    5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/src/mesa/main/fbobject.c b/src/mesa/main/fbobject.c
index 76aa0bf..74f294c 100644
--- a/src/mesa/main/fbobject.c
+++ b/src/mesa/main/fbobject.c
@@ -385,8 +385,6 @@ _mesa_update_texture_renderbuffer(struct gl_context *ctx,
    struct gl_renderbuffer *rb;
 
    texImage = att->Texture->Image[att->CubeMapFace][att->TextureLevel];
-   if (!texImage)
-      return;
 
    rb = att->Renderbuffer;
    if (!rb) {
@@ -405,6 +403,9 @@ _mesa_update_texture_renderbuffer(struct gl_context *ctx,
       rb->NeedsFinishRenderTexture = ctx->Driver.FinishRenderTexture != NULL;
    }
 
+   if (!texImage)
+      return;
+
    rb->_BaseFormat = texImage->_BaseFormat;
    rb->Format = texImage->TexFormat;
    rb->InternalFormat = texImage->InternalFormat;




More information about the mesa-commit mailing list