From 49a6bdde8ef1da38df3f15e8478c8cad116eab46 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michel=20D=C3=A4nzer?= Date: Wed, 8 Feb 2023 17:36:35 +0100 Subject: [PATCH] glsl/standalone: Do not pass memory allocated with ralloc_size to free MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Pointed out by GCC: In function ‘load_text_file’, inlined from ‘standalone_compile_shader’ at ../src/compiler/glsl/standalone.cpp:491:38, inlined from ‘main’ at ../src/compiler/glsl/main.cpp:98:45: ../src/compiler/glsl/standalone.cpp:358:17: error: ‘free’ called on pointer ‘block_195’ with nonzero offset 48 [-Werror=free-nonheap-object] 358 | free(text); | ^ In function ‘ralloc_size’, inlined from ‘load_text_file’ at ../src/compiler/glsl/standalone.cpp:352:31, inlined from ‘standalone_compile_shader’ at ../src/compiler/glsl/standalone.cpp:491:38, inlined from ‘main’ at ../src/compiler/glsl/main.cpp:98:45: ../src/util/ralloc.c:117:18: note: returned from ‘malloc’ 117 | void *block = malloc(align64(size + sizeof(ralloc_header), | ^ Fixes: a9696e79fb3a ("main: Close memory leak of shader string from load_text_file.") Part-of: --- src/compiler/glsl/standalone.cpp | 1 - 1 file changed, 1 deletion(-) diff --git a/src/compiler/glsl/standalone.cpp b/src/compiler/glsl/standalone.cpp index b94ded29dfe..d33d5071f7b 100644 --- a/src/compiler/glsl/standalone.cpp +++ b/src/compiler/glsl/standalone.cpp @@ -355,7 +355,6 @@ load_text_file(void *ctx, const char *file_name) size_t bytes = fread(text + total_read, 1, size - total_read, fp); if (bytes < size - total_read) { - free(text); text = NULL; goto error; }