Fix: Wrong sizeof argument in pid tracker
[lttng-tools.git] / src / bin / lttng / commands / track-untrack.c
index b3139c6931998003757d797991258881b79d02f9..890e1836b66ec952ccfaff17ee39b959978f1aa8 100644 (file)
@@ -26,6 +26,7 @@
 #include <sys/stat.h>
 #include <sys/types.h>
 #include <unistd.h>
+#include <assert.h>
 
 #include <urcu/list.h>
 
@@ -109,7 +110,7 @@ int parse_pid_string(const char *_pid_string,
                goto error;
        }
        if (all) {
-               pid_list = zmalloc(sizeof(*_pid_list));
+               pid_list = zmalloc(sizeof(*pid_list));
                if (!pid_list) {
                        ERR("Out of memory");
                        retval = CMD_ERROR;
@@ -229,9 +230,8 @@ enum cmd_error_code track_untrack_pid(enum cmd_type cmd_type, const char *cmd_st
        } else if (opt_userspace) {
                dom.type = LTTNG_DOMAIN_UST;
        } else {
-               print_missing_domain();
-               ret = CMD_ERROR;
-               goto end;
+               /* Checked by the caller. */
+               assert(0);
        }
 
        ret = parse_pid_string(pid_string, all, &pid_list, &nr_pids);
@@ -381,10 +381,9 @@ int cmd_track_untrack(enum cmd_type cmd_type, const char *cmd_str,
                }
        }
 
-       if (!(opt_userspace ^ opt_kernel)) {
-               ERR("Exactly one of -u or -k needs to be specified.");
-               usage(stderr, cmd_str);
-               command_ret = CMD_ERROR;
+       ret = print_missing_or_multiple_domains(opt_kernel + opt_userspace);
+       if (ret) {
+               ret = CMD_ERROR;
                goto end;
        }
 
This page took 0.023271 seconds and 4 git commands to generate.