Fix: Use get_domain_str on add context
[lttng-tools.git] / src / bin / lttng / commands / add_context.c
index 1ba13bfd751e3a425705cf371da4f0827bc9f42a..2311dfa20fdcc08c34ee2891d7c6ffeb810fa03f 100644 (file)
@@ -25,6 +25,7 @@
 #include <sys/stat.h>
 #include <sys/types.h>
 #include <unistd.h>
+#include <assert.h>
 
 #include <urcu/list.h>
 
@@ -568,9 +569,7 @@ static int add_context(char *session_name)
        } else if (opt_userspace) {
                dom.type = LTTNG_DOMAIN_UST;
        } else {
-               print_missing_domain();
-               ret = CMD_ERROR;
-               goto error;
+               assert(0);
        }
 
        handle = lttng_create_handle(session_name, &dom);
@@ -629,11 +628,11 @@ static int add_context(char *session_name)
                } else {
                        if (opt_channel_name) {
                                MSG("%s context %s added to channel %s",
-                                               opt_kernel ? "kernel" : "UST", type->opt->symbol,
+                                               get_domain_str(dom.type), type->opt->symbol,
                                                opt_channel_name);
                        } else {
                                MSG("%s context %s added to all channels",
-                                               opt_kernel ? "kernel" : "UST", type->opt->symbol)
+                                               get_domain_str(dom.type), type->opt->symbol)
                        }
                        success = 1;
                }
@@ -716,9 +715,9 @@ int cmd_add_context(int argc, const char **argv)
                                goto end;
                        }
 
-                       type = malloc(sizeof(struct ctx_type));
+                       type = zmalloc(sizeof(struct ctx_type));
                        if (type == NULL) {
-                               perror("malloc ctx_type");
+                               PERROR("malloc ctx_type");
                                ret = CMD_FATAL;
                                goto end;
                        }
@@ -749,6 +748,13 @@ int cmd_add_context(int argc, const char **argv)
                }
        }
 
+       ret = print_missing_or_multiple_domains(opt_kernel + opt_userspace);
+
+       if (ret) {
+               ret = CMD_ERROR;
+               goto end;
+       }
+
        if (!opt_type) {
                ERR("Missing mandatory -t TYPE");
                usage(stderr);
This page took 0.024094 seconds and 4 git commands to generate.