Takashi Iwai 2b1677
From 8e1ba47c60bcd325fdd097cd76054639155e5d2e Mon Sep 17 00:00:00 2001
Takashi Iwai 2b1677
From: Tom Rix <trix@redhat.com>
Takashi Iwai 2b1677
Date: Mon, 20 Jul 2020 12:18:45 -0700
Takashi Iwai 2b1677
Subject: [PATCH] video: fbdev: pvr2fb: initialize variables
Takashi Iwai 2b1677
Git-commit: 8e1ba47c60bcd325fdd097cd76054639155e5d2e
Takashi Iwai 2b1677
Patch-mainline: v5.10-rc1
Takashi Iwai 2b1677
References: git-fixes
Takashi Iwai 2b1677
Takashi Iwai 2b1677
clang static analysis reports this repesentative error
Takashi Iwai 2b1677
Takashi Iwai 2b1677
pvr2fb.c:1049:2: warning: 1st function call argument
Takashi Iwai 2b1677
  is an uninitialized value [core.CallAndMessage]
Takashi Iwai 2b1677
        if (*cable_arg)
Takashi Iwai 2b1677
        ^~~~~~~~~~~~~~~
Takashi Iwai 2b1677
Takashi Iwai 2b1677
Problem is that cable_arg depends on the input loop to
Takashi Iwai 2b1677
set the cable_arg[0].  If it does not, then some random
Takashi Iwai 2b1677
value from the stack is used.
Takashi Iwai 2b1677
Takashi Iwai 2b1677
A similar problem exists for output_arg.
Takashi Iwai 2b1677
Takashi Iwai 2b1677
So initialize cable_arg and output_arg.
Takashi Iwai 2b1677
Takashi Iwai 2b1677
Signed-off-by: Tom Rix <trix@redhat.com>
Takashi Iwai 2b1677
Acked-by: Arnd Bergmann <arnd@arndb.de>
Takashi Iwai 2b1677
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Takashi Iwai 2b1677
Link: https://patchwork.freedesktop.org/patch/msgid/20200720191845.20115-1-trix@redhat.com
Takashi Iwai 2b1677
Acked-by: Takashi Iwai <tiwai@suse.de>
Takashi Iwai 2b1677
Takashi Iwai 2b1677
---
Takashi Iwai 2b1677
 drivers/video/fbdev/pvr2fb.c | 2 ++
Takashi Iwai 2b1677
 1 file changed, 2 insertions(+)
Takashi Iwai 2b1677
Takashi Iwai 2b1677
diff --git a/drivers/video/fbdev/pvr2fb.c b/drivers/video/fbdev/pvr2fb.c
Takashi Iwai 2b1677
index 2d9f69b93392..f4add36cb5f4 100644
Takashi Iwai 2b1677
--- a/drivers/video/fbdev/pvr2fb.c
Takashi Iwai 2b1677
+++ b/drivers/video/fbdev/pvr2fb.c
Takashi Iwai 2b1677
@@ -1028,6 +1028,8 @@ static int __init pvr2fb_setup(char *options)
Takashi Iwai 2b1677
 	if (!options || !*options)
Takashi Iwai 2b1677
 		return 0;
Takashi Iwai 2b1677
 
Takashi Iwai 2b1677
+	cable_arg[0] = output_arg[0] = 0;
Takashi Iwai 2b1677
+
Takashi Iwai 2b1677
 	while ((this_opt = strsep(&options, ","))) {
Takashi Iwai 2b1677
 		if (!*this_opt)
Takashi Iwai 2b1677
 			continue;
Takashi Iwai 2b1677
-- 
Takashi Iwai 2b1677
2.16.4
Takashi Iwai 2b1677