From: Marek Olšák Date: Thu, 22 Oct 2015 19:32:23 +0000 (+0200) Subject: radeonsi: allow unbinding vertex shaders X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=3a157e6e68b3f01fe5814f6313ec0811115b0694;p=mesa.git radeonsi: allow unbinding vertex shaders Draw calls without a vertex shader are skipped. Reviewed-by: Michel Dänzer --- diff --git a/src/gallium/drivers/radeonsi/si_state_shaders.c b/src/gallium/drivers/radeonsi/si_state_shaders.c index 25cba844784..4a3a04caa52 100644 --- a/src/gallium/drivers/radeonsi/si_state_shaders.c +++ b/src/gallium/drivers/radeonsi/si_state_shaders.c @@ -799,11 +799,11 @@ static void si_bind_vs_shader(struct pipe_context *ctx, void *state) struct si_context *sctx = (struct si_context *)ctx; struct si_shader_selector *sel = state; - if (sctx->vs_shader.cso == sel || !sel) + if (sctx->vs_shader.cso == sel) return; sctx->vs_shader.cso = sel; - sctx->vs_shader.current = sel->first_variant; + sctx->vs_shader.current = sel ? sel->first_variant : NULL; si_mark_atom_dirty(sctx, &sctx->clip_regs); si_update_viewports_and_scissors(sctx); }