From 2271a187c231f1ee2d10d0d777aa53605ed8f59a Mon Sep 17 00:00:00 2001 From: Iago Toral Quiroga Date: Thu, 2 Jan 2020 10:10:57 +0100 Subject: [PATCH] u_vbuf: don't try to delete NULL driver CSO MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Since 18a8c3f7f11 we don't create a driver CSO if there are any incompatible elements, so only ask backends to delete it if it exists. Fixes multiple CTS crashes in V3D. Fixes: 18a8c3f7f11 ("u_vbuf: Only create driver CSO if no incompatible elements") Reviewed-by: Alejandro Piñeiro Reviewed-by: Christian Gmeiner Reviewed-by: Marek Olšák --- src/gallium/auxiliary/util/u_vbuf.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/gallium/auxiliary/util/u_vbuf.c b/src/gallium/auxiliary/util/u_vbuf.c index 70eaebb453e..8d50092b4c4 100644 --- a/src/gallium/auxiliary/util/u_vbuf.c +++ b/src/gallium/auxiliary/util/u_vbuf.c @@ -849,7 +849,8 @@ static void u_vbuf_delete_vertex_elements(struct u_vbuf *mgr, void *cso) struct pipe_context *pipe = mgr->pipe; struct u_vbuf_elements *ve = cso; - pipe->delete_vertex_elements_state(pipe, ve->driver_cso); + if (ve->driver_cso) + pipe->delete_vertex_elements_state(pipe, ve->driver_cso); FREE(ve); } -- 2.30.2