xserver: Branch 'master'

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Fri Dec 3 10:04:17 UTC 2021


 glamor/glamor_program.c |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

New commits:
commit 5ac6319776b13f96a2b336da4b35237618a5b001
Author: Jonathan Gray <jsg at jsg.id.au>
Date:   Fri Dec 3 19:17:18 2021 +1100

    glamor: fix free of uninitialised pointers
    
    Attempting to run fvwm on a x61/965gm with xserver 1.21.1 with the
    modesetting driver on OpenBSD/amd64 would cause the xserver to
    reliably crash.
    
    I tracked this down to the free() calls introduced in
    2906ee5e4a722138cccb3265a615da7705a52589
    (d1ca47e1242b51c79cec7287f52c36c8e494706b in branch).
    
    clang also warns about this:
    glamor_program.c:296:13: warning: variable 'vs_prog_string' is used uninitialized whenever 'if' condition is true [-Wsometimes-uninitialized]
    glamor_program.c:290:9: warning: variable 'vs_prog_string' is used uninitialized whenever 'if' condition is true [-Wsometimes-uninitialized]
    glamor_program.c:288:9: warning: variable 'vs_prog_string' is used uninitialized whenever 'if' condition is true [-Wsometimes-uninitialized]
    glamor_program.c:277:13: warning: variable 'vs_prog_string' is used uninitialized whenever 'if' condition is true [-Wsometimes-uninitialized]
    glamor_program.c:296:13: warning: variable 'fs_prog_string' is used uninitialized whenever 'if' condition is true [-Wsometimes-uninitialized]
    glamor_program.c:290:9: warning: variable 'fs_prog_string' is used uninitialized whenever 'if' condition is true [-Wsometimes-uninitialized]
    glamor_program.c:288:9: warning: variable 'fs_prog_string' is used uninitialized whenever 'if' condition is true [-Wsometimes-uninitialized]
    glamor_program.c:277:13: warning: variable 'fs_prog_string' is used uninitialized whenever 'if' condition is true [-Wsometimes-uninitialized]
    
    Signed-off-by: Jonathan Gray <jsg at jsg.id.au>
    Reviewed-by: Olivier Fourdan <ofourdan at redhat.com>
    Fixes: 2906ee5e4 ("glamor: Fix leak in glamor_build_program()")

diff --git a/glamor/glamor_program.c b/glamor/glamor_program.c
index c51577fc3..d8ddb4c77 100644
--- a/glamor/glamor_program.c
+++ b/glamor/glamor_program.c
@@ -260,8 +260,8 @@ glamor_build_program(ScreenPtr          screen,
     char                        *fs_vars = NULL;
     char                        *vs_vars = NULL;
 
-    char                        *vs_prog_string;
-    char                        *fs_prog_string;
+    char                        *vs_prog_string = NULL;
+    char                        *fs_prog_string = NULL;
 
     GLint                       fs_prog, vs_prog;
     Bool                        gpu_shader4 = FALSE;


More information about the xorg-commit mailing list