From ec81f19b44951fbc0e6a8b381afe6d85834132b8 Mon Sep 17 00:00:00 2001 From: Kenneth Graunke Date: Fri, 20 Sep 2019 14:33:51 -0700 Subject: [PATCH] st/mesa: Bail on incomplete attachments in discard_framebuffer MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Incomplete attachments don't have an associated pipe_surface, so this would crash. Fixes a WebGL conformance test that uses incomplete attachments: https://www.khronos.org/registry/webgl/sdk/tests/conformance2/renderbuffers/invalidate-framebuffer.html?webglVersion=2&quiet=0&quick=1 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=111756 Reviewed-By: Tapani Pälli --- src/mesa/state_tracker/st_cb_fbo.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mesa/state_tracker/st_cb_fbo.c b/src/mesa/state_tracker/st_cb_fbo.c index bf23f4f3a8d..55546f9fab3 100644 --- a/src/mesa/state_tracker/st_cb_fbo.c +++ b/src/mesa/state_tracker/st_cb_fbo.c @@ -778,7 +778,7 @@ st_discard_framebuffer(struct gl_context *ctx, struct gl_framebuffer *fb, struct st_context *st = st_context(ctx); struct pipe_resource *prsc; - if (!att->Renderbuffer) + if (!att->Renderbuffer || !att->Complete) return; prsc = st_renderbuffer(att->Renderbuffer)->surface->texture;