Mesa (master): zink: avoid NULL-deref

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Fri Nov 29 09:19:23 UTC 2019


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

Author: Erik Faye-Lund <erik.faye-lund at collabora.com>
Date:   Wed Nov 27 17:17:08 2019 +0100

zink: avoid NULL-deref

zink_render_pass_reference will dereference the memory 'dst' points at,
which can't really go well. All we want to do here is to increase the
reference-count, so let's use a different helper for that instead.

CoverityID: 1455200
Reviewed-by: Dave Airlie <airlied at redhat.com>

---

 src/gallium/drivers/zink/zink_program.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/src/gallium/drivers/zink/zink_program.c b/src/gallium/drivers/zink/zink_program.c
index 92a75489cf5..95b47a69d93 100644
--- a/src/gallium/drivers/zink/zink_program.c
+++ b/src/gallium/drivers/zink/zink_program.c
@@ -210,9 +210,8 @@ reference_render_pass(struct zink_screen *screen,
    struct set_entry *entry = _mesa_set_search(prog->render_passes,
                                               render_pass);
    if (!entry) {
-      struct zink_render_pass *tmp = NULL;
       entry = _mesa_set_add(prog->render_passes, render_pass);
-      zink_render_pass_reference(screen, &tmp, render_pass);
+      pipe_reference(NULL, &render_pass->reference);
    }
 }
 




More information about the mesa-commit mailing list