Commit 041f8ae9 authored by Brian Paul's avatar Brian Paul

svga: check return value from svga_set_shader( SVGA3D_SHADERTYPE_GS, NULL)

If the call fails we need to flush the command buffer and retry.  In this
case, we were failing to unbind the GS which led to subsequent errors.

This fixes a bug replaying a Cinebench R15 apitrace in a Linux guest.
VMware bug 1894451

cc: mesa-stable@lists.freedesktop.org
Reviewed-by: Charmaine Lee's avatarCharmaine Lee <charmainel@vmware.com>
parent 3fbdab87
......@@ -190,6 +190,8 @@ emit_hw_gs(struct svga_context *svga, unsigned dirty)
* Needs to unbind the geometry shader.
*/
ret = svga_set_shader(svga, SVGA3D_SHADERTYPE_GS, NULL);
if (ret != PIPE_OK)
goto done;
svga->state.hw_draw.gs = NULL;
}
goto done;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment