From e98521e0f3ef430adc0eb2587ffe83844e24be06 Mon Sep 17 00:00:00 2001 From: Vadim Girlin Date: Fri, 2 Dec 2011 13:44:29 +0400 Subject: [PATCH] r600g: check shaders presence in r600_draw_vbo This patch should prevent the crashes when some shaders are absent, see https://bugs.freedesktop.org/show_bug.cgi?id=43341 Note this is a candidate for the stable branch. Signed-off-by: Vadim Girlin Signed-off-by: Alex Deucher --- src/gallium/drivers/r600/r600_state_common.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/gallium/drivers/r600/r600_state_common.c b/src/gallium/drivers/r600/r600_state_common.c index 9ecbc53522b..d6ffda47c2c 100644 --- a/src/gallium/drivers/r600/r600_state_common.c +++ b/src/gallium/drivers/r600/r600_state_common.c @@ -534,6 +534,9 @@ void r600_draw_vbo(struct pipe_context *ctx, const struct pipe_draw_info *dinfo) return; } + if (!rctx->ps_shader || !rctx->vs_shader) + return; + r600_update_derived_state(rctx); u_vbuf_draw_begin(rctx->vbuf_mgr, dinfo); -- 2.30.2