Introduce common event structure
[lttng-ust.git] / liblttng-ust / lttng-bytecode.c
index 6cc3179d3df19aa9e468e976eb8fed629ca58d07..5956f7bab45fe3a942f1219e229dc5a5f6585610 100644 (file)
@@ -398,6 +398,7 @@ static
 int link_bytecode(const struct lttng_event_desc *event_desc,
                struct lttng_ctx **ctx,
                struct lttng_ust_bytecode_node *bytecode,
+               struct cds_list_head *bytecode_runtime_head,
                struct cds_list_head *insert_loc)
 {
        int ret, offset, next_offset;
@@ -408,7 +409,7 @@ int link_bytecode(const struct lttng_event_desc *event_desc,
        if (!bytecode)
                return 0;
        /* Bytecode already linked */
-       if (bytecode_is_linked(bytecode, insert_loc))
+       if (bytecode_is_linked(bytecode, bytecode_runtime_head))
                return 0;
 
        dbg_printf("Linking...\n");
@@ -577,7 +578,7 @@ void lttng_enabler_link_bytecode(const struct lttng_event_desc *event_desc,
                insert_loc = instance_bytecode_head;
        add_within:
                dbg_printf("linking bytecode\n");
-               ret = link_bytecode(event_desc, ctx, enabler_bc, insert_loc);
+               ret = link_bytecode(event_desc, ctx, enabler_bc, instance_bytecode_head, insert_loc);
                if (ret) {
                        dbg_printf("[lttng filter] warning: cannot link event bytecode\n");
                }
@@ -609,7 +610,7 @@ void free_filter_runtime(struct cds_list_head *bytecode_runtime_head)
 
 void lttng_free_event_filter_runtime(struct lttng_event *event)
 {
-       free_filter_runtime(&event->filter_bytecode_runtime_head);
+       free_filter_runtime(&event->parent->filter_bytecode_runtime_head);
 }
 
 void lttng_free_event_notifier_filter_runtime(
This page took 0.023985 seconds and 4 git commands to generate.