sessiond: clean-up: mixed log levels enums used to look-up event
[lttng-tools.git] / src / bin / lttng-sessiond / event.c
index f97148db113c2bf1c8f3cc32dd9b6dd38170f599..f4b976f3b7ec27dfefa45bed373c5d01fbf10736 100644 (file)
@@ -172,7 +172,8 @@ int event_ust_enable_tracepoint(struct ltt_ust_session *usess,
        rcu_read_lock();
 
        uevent = trace_ust_find_event(uchan->events, event->name, filter,
-                       event->loglevel_type, event->loglevel, exclusion);
+                       (enum lttng_ust_loglevel_type) event->loglevel_type,
+                       event->loglevel, exclusion);
        if (!uevent) {
                ret = trace_ust_create_event(event, filter_expression,
                                filter, exclusion, internal_event, &uevent);
@@ -190,6 +191,7 @@ int event_ust_enable_tracepoint(struct ltt_ust_session *usess,
 
        if (uevent->enabled) {
                /* It's already enabled so everything is OK */
+               assert(!to_create);
                ret = LTTNG_ERR_UST_EVENT_ENABLED;
                goto end;
        }
@@ -506,7 +508,8 @@ int event_agent_enable(struct ltt_ust_session *usess,
                        ret = LTTNG_ERR_NOMEM;
                        goto error;
                }
-
+               filter = NULL;
+               filter_expression = NULL;
                created = 1;
        }
 
@@ -533,13 +536,16 @@ int event_agent_enable(struct ltt_ust_session *usess,
                agent_add_event(aevent, agt);
        }
 
-end:
-       return LTTNG_OK;
+       ret = LTTNG_OK;
+       goto end;
 
 error:
        if (created) {
                agent_destroy_event(aevent);
        }
+end:
+       free(filter);
+       free(filter_expression);
        return ret;
 }
 
This page took 0.023476 seconds and 4 git commands to generate.