e_comp_wl: Don't use uninitialized value
authorSeunghun Lee <shiin.lee@samsung.com>
Thu, 17 Aug 2023 01:31:23 +0000 (10:31 +0900)
committerSooChan Lim <sc1.lim@samsung.com>
Fri, 18 Aug 2023 05:31:43 +0000 (14:31 +0900)
The uninitialized 'name' variable could be used if fopen() in
_e_comp_wl_pname_get() is failed.

Change-Id: Ib6d874481ab52483369784d7d8799311f01a0b9c

src/bin/e_comp_wl.c

index da7dc98..6ec84b6 100644 (file)
@@ -3196,15 +3196,20 @@ _e_comp_wl_pname_get(pid_t pid, char *name, int size)
    snprintf(proc, 512,"/proc/%d/cmdline", pid);
 
    h = fopen(proc, "r");
-   if (!h) return;
+   if (h)
+     {
+        len = fread(pname, sizeof(char), 512, h);
+        if (len > 0)
+          pname[len - 1] = '\0';
+        else
+          strncpy(pname, "NO NAME", sizeof(pname));
 
-   len = fread(pname, sizeof(char), 512, h);
-   if (len > 0)
-     pname[len - 1] = '\0';
+        fclose(h);
+     }
    else
-     strncpy(pname, "NO NAME", sizeof(pname));
-
-   fclose(h);
+     {
+        strncpy(pname, "NO NAME", sizeof(pname));
+     }
 
    strncpy(name, pname, size);
 }