- filter_expression = set_jul_filter(filter_expression, ev);
- if (!filter_expression) {
- goto ask_sessiond;
+ jul_filter = set_jul_filter(filter_expression, ev);
+ if (!jul_filter) {
+ if (!filter_expression) {
+ /* No JUL and no filter, just skip everything below. */
+ goto ask_sessiond;
+ }
+ } else {
+ /*
+ * With a JUL filter, the original filter has been added to it
+ * thus replace the filter expression.
+ */
+ filter_expression = strdup(jul_filter);
+ free(jul_filter);
+ if (!filter_expression) {
+ return -LTTNG_ERR_FILTER_NOMEM;
+ }