Module: Mesa
Branch: master
Commit: 2f41afeac1ac2ba02a99dc1f77813d957f288728
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=2f41afeac1ac2ba02a99dc1f77813d957f288728

Author: Eric Anholt <[email protected]>
Date:   Tue Dec 22 16:42:49 2020 -0800

mesa/st: Fix use-after-free of the draw VS.

If the program with a draw variant gets deleted, it could leave a dangling
pointer in st's draw module that would get referenced next state update of
a draw fallback.

Fixes a valgrind complaint in piglit's rasterpos test, which is flaky on
softpipe (but not due to this).

Reviewed-by: Marek Olšák <[email protected]>
Reviewed-By: Mike Blumenkrantz <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8207>

---

 src/mesa/state_tracker/st_draw_feedback.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/mesa/state_tracker/st_draw_feedback.c 
b/src/mesa/state_tracker/st_draw_feedback.c
index efb51cc484e..ba51420a23e 100644
--- a/src/mesa/state_tracker/st_draw_feedback.c
+++ b/src/mesa/state_tracker/st_draw_feedback.c
@@ -518,4 +518,6 @@ st_feedback_draw_vbo(struct gl_context *ctx,
       draw_set_mapped_vertex_buffer(draw, buf, NULL, 0);
    }
    draw_set_vertex_buffers(draw, 0, num_vbuffers, NULL);
+
+   draw_bind_vertex_shader(draw, NULL);
 }

_______________________________________________
mesa-commit mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/mesa-commit

Reply via email to