]> git.proxmox.com Git - mirror_lxcfs.git/commitdiff
proc_loadavg: replace malloc() with asprintf() in calc_pid()
authorChristian Brauner <christian.brauner@ubuntu.com>
Fri, 5 Jun 2020 09:44:56 +0000 (11:44 +0200)
committerStéphane Graber <stgraber@ubuntu.com>
Fri, 5 Jun 2020 18:43:13 +0000 (14:43 -0400)
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
src/proc_loadavg.c

index 0bc58ddb92e94d0f2974533de6703c889f6531cc..ab420c9b55995ee9c322fef11d13ab1a3b6ea8f0 100644 (file)
@@ -317,15 +317,15 @@ static int calc_pid(char ***pid_buf, const char *dpath, int depth, int sum, int
 
                if (file->d_type == DT_DIR) {
                        __do_free char *path_dir = NULL;
+                       int ret;
 
                        /* path + '/' + d_name +/0 */
-                       path_dir = malloc(strlen(path) + 2 + sizeof(file->d_name));
-                       if (!path_dir)
+                       ret = asprintf(&path_dir, "%s/%s", path, file->d_name);
+                       if (ret < 0) {
+                               path_dir = NULL;
                                return sum;
+                       }
 
-                       strcpy(path_dir, path);
-                       strcat(path_dir, "/");
-                       strcat(path_dir, file->d_name);
                        pd = depth - 1;
                        sum = calc_pid(pid_buf, path_dir, pd, sum, cfd);
                }