From 5bd230f4f87cd49f82e418fcb1886c255f8acf14 Mon Sep 17 00:00:00 2001 From: Mathieu Desnoyers Date: Tue, 16 May 2017 11:53:22 -0400 Subject: [PATCH] Fix: invoke bt_ctf_trace_set_is_static only when trace is destroyed MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Signed-off-by: Mathieu Desnoyers Signed-off-by: Jérémie Galarneau --- plugins/ctf/lttng-live/lttng-live.c | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/plugins/ctf/lttng-live/lttng-live.c b/plugins/ctf/lttng-live/lttng-live.c index 3c5e04db..095bef5b 100644 --- a/plugins/ctf/lttng-live/lttng-live.c +++ b/plugins/ctf/lttng-live/lttng-live.c @@ -164,10 +164,15 @@ static void lttng_live_destroy_trace(struct bt_object *obj) { struct lttng_live_trace *trace = container_of(obj, struct lttng_live_trace, obj); + int retval; BT_LOGI("Destroy trace"); assert(bt_list_empty(&trace->streams)); bt_list_del(&trace->node); + + retval = bt_ctf_trace_set_is_static(trace->trace); + assert(!retval); + lttng_live_metadata_fini(trace); BT_PUT(trace->cc_prio_map); g_free(trace); @@ -405,12 +410,8 @@ enum bt_ctf_lttng_live_iterator_status lttng_live_get_session( } bt_list_for_each_entry_safe(trace, t, &session->traces, node) { status = lttng_live_metadata_update(trace); - if (status == BT_CTF_LTTNG_LIVE_ITERATOR_STATUS_END) { - int retval; - - retval = bt_ctf_trace_set_is_static(trace->trace); - assert(!retval); - } else if (status != BT_CTF_LTTNG_LIVE_ITERATOR_STATUS_OK) { + if (status != BT_CTF_LTTNG_LIVE_ITERATOR_STATUS_OK && + status != BT_CTF_LTTNG_LIVE_ITERATOR_STATUS_END) { return status; } } -- 2.34.1