Fix: use zmalloc() in lttng list.c
[lttng-tools.git] / src / bin / lttng / commands / list.c
index f69b3ba3d67b1b8ce5a2b02b839d032f306f4a0e..5f452e58958d1e5a0fa2a4eff4a919a6e1141e46 100644 (file)
@@ -107,7 +107,7 @@ static char *get_cmdline_by_pid(pid_t pid)
        int ret;
        FILE *fp;
        char *cmdline = NULL;
-       char path[24];  /* Can't go bigger than /proc/65535/cmdline */
+       char path[20];  /* Can't go bigger than /proc/65535/cmdline */
 
        snprintf(path, sizeof(path), "/proc/%d/cmdline", pid);
        fp = fopen(path, "r");
@@ -116,7 +116,11 @@ static char *get_cmdline_by_pid(pid_t pid)
        }
 
        /* Caller must free() *cmdline */
-       cmdline = malloc(PATH_MAX);
+       cmdline = zmalloc(PATH_MAX);
+       if (!cmdline) {
+               perror("malloc cmdline");
+               goto end;
+       }
        ret = fread(cmdline, 1, PATH_MAX, fp);
        if (ret < 0) {
                perror("fread proc list");
@@ -684,7 +688,7 @@ static int list_channels(const char *channel_name)
                goto error_channels;
        }
 
-       if (channel_name == NULL) {
+       if (count) {
                MSG("Channels:\n-------------");
        }
 
This page took 0.023373 seconds and 4 git commands to generate.