Fix: send disable ALL command code if event is *
[lttng-tools.git] / src / lib / lttng-ctl / lttng-ctl.c
index a92bf39125b287528d202d9160e09d7b7c7462f2..23b84db4f9519e209d4477db2a6e645ac9c45157 100644 (file)
@@ -703,7 +703,7 @@ static char *set_jul_filter(const char *filter, struct lttng_event *ev)
        /* Don't add filter for the '*' event. */
        if (ev->name[0] != '*') {
                if (filter) {
-                       err = asprintf(&jul_filter, "%s && logger_name == \"%s\"", filter,
+                       err = asprintf(&jul_filter, "(%s) && (logger_name == \"%s\")", filter,
                                        ev->name);
                } else {
                        err = asprintf(&jul_filter, "logger_name == \"%s\"", ev->name);
@@ -727,7 +727,7 @@ static char *set_jul_filter(const char *filter, struct lttng_event *ev)
                if (filter || jul_filter) {
                        char *new_filter;
 
-                       err = asprintf(&new_filter, "%s && int_loglevel %s %d",
+                       err = asprintf(&new_filter, "(%s) && (int_loglevel %s %d)",
                                        jul_filter ? jul_filter : filter, op,
                                        ev->loglevel);
                        if (jul_filter) {
@@ -1056,7 +1056,7 @@ int lttng_disable_event(struct lttng_handle *handle, const char *name,
 
        lttng_ctl_copy_lttng_domain(&lsm.domain, &handle->domain);
 
-       if (name != NULL) {
+       if (name != NULL && *name != '*') {
                lttng_ctl_copy_string(lsm.u.disable.name, name,
                                sizeof(lsm.u.disable.name));
                lsm.cmd_type = LTTNG_DISABLE_EVENT;
This page took 0.023771 seconds and 4 git commands to generate.