Mesa (master): zink: Check fopen result.

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Fri May 29 09:10:31 UTC 2020


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

Author: Vinson Lee <vlee at freedesktop.org>
Date:   Wed May 27 16:19:25 2020 -0700

zink: Check fopen result.

Fix warning reported by Coverity.

Dereference null return value (NULL_RETURNS)
dereference: Dereferencing a pointer that might be NULL fp when calling
fwrite.

Fixes: 8d46e35d16e3 ("zink: introduce opengl over vulkan")
Signed-off-by: Vinson Lee <vlee at freedesktop.org>
Reviewed-by: Erik Faye-Lund <erik.faye-lund at collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5235>

---

 src/gallium/drivers/zink/zink_compiler.c | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/src/gallium/drivers/zink/zink_compiler.c b/src/gallium/drivers/zink/zink_compiler.c
index 1d9d21df3fe..98ef706fb8f 100644
--- a/src/gallium/drivers/zink/zink_compiler.c
+++ b/src/gallium/drivers/zink/zink_compiler.c
@@ -195,9 +195,11 @@ zink_compile_nir(struct zink_screen *screen, struct nir_shader *nir)
       static int i;
       snprintf(buf, sizeof(buf), "dump%02d.spv", i++);
       FILE *fp = fopen(buf, "wb");
-      fwrite(spirv->words, sizeof(uint32_t), spirv->num_words, fp);
-      fclose(fp);
-      fprintf(stderr, "wrote '%s'...\n", buf);
+      if (fp) {
+         fwrite(spirv->words, sizeof(uint32_t), spirv->num_words, fp);
+         fclose(fp);
+         fprintf(stderr, "wrote '%s'...\n", buf);
+      }
    }
 
    VkShaderModuleCreateInfo smci = {};



More information about the mesa-commit mailing list