projects
/
lttng-tools.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix: logger name dropped from filter condition when loglevels are used
[lttng-tools.git]
/
src
/
lib
/
lttng-ctl
/
lttng-ctl.c
diff --git
a/src/lib/lttng-ctl/lttng-ctl.c
b/src/lib/lttng-ctl/lttng-ctl.c
index d2f6799e11a070031805f09774e33b137c33d38c..01572dc94dc2aa873d58ece215734a0ffcb8485c 100644
(file)
--- a/
src/lib/lttng-ctl/lttng-ctl.c
+++ b/
src/lib/lttng-ctl/lttng-ctl.c
@@
-710,7
+710,7
@@
static char *set_jul_filter(const char *filter, struct lttng_event *ev)
}
if (err < 0) {
PERROR("asprintf");
}
if (err < 0) {
PERROR("asprintf");
- goto e
nd
;
+ goto e
rror
;
}
}
}
}
@@
-724,23
+724,30
@@
static char *set_jul_filter(const char *filter, struct lttng_event *ev)
op = "==";
}
op = "==";
}
- if (filter) {
- err = asprintf(&jul_filter, "%s && int_loglevel %s %d", filter, op,
+ if (filter || jul_filter) {
+ char *new_filter;
+
+ err = asprintf(&new_filter, "%s && int_loglevel %s %d",
+ jul_filter ? jul_filter : filter, op,
ev->loglevel);
ev->loglevel);
+ if (jul_filter) {
+ free(jul_filter);
+ }
+ jul_filter = new_filter;
} else {
err = asprintf(&jul_filter, "int_loglevel %s %d", op,
ev->loglevel);
}
if (err < 0) {
PERROR("asprintf");
} else {
err = asprintf(&jul_filter, "int_loglevel %s %d", op,
ev->loglevel);
}
if (err < 0) {
PERROR("asprintf");
- free(jul_filter);
- jul_filter = NULL;
- goto end;
+ goto error;
}
}
}
}
-end:
return jul_filter;
return jul_filter;
+error:
+ free(jul_filter);
+ return NULL;
}
/*
}
/*
This page took
0.023258 seconds
and
4
git commands to generate.