ctf.fs source: recurse to find multiples CTF traces
[babeltrace.git] / plugins / ctf / lttng-live / metadata.c
index 3124ff6c584d3dee2aaad5ed8b91ed9e4dcfe639..7c8ce4dddb49498fdd8f82a5a34999c5ea3b74ab 100644 (file)
@@ -30,6 +30,7 @@
 #include <glib.h>
 #include <babeltrace/compat/uuid-internal.h>
 #include <babeltrace/compat/memstream-internal.h>
+#include <babeltrace/graph/graph.h>
 
 #define BT_LOG_TAG "PLUGIN-CTF-LTTNG-LIVE-METADATA"
 
@@ -155,6 +156,12 @@ enum bt_ctf_lttng_live_iterator_status lttng_live_metadata_update(
                         */
                        lttng_live_unref_trace(metadata->trace);
                }
+               if (errno == EINTR) {
+                       if (bt_graph_is_canceled(session->lttng_live->graph)) {
+                               status = BT_CTF_LTTNG_LIVE_ITERATOR_STATUS_AGAIN;
+                               goto end;
+                       }
+               }
        }
 
        if (bt_close_memstream(&metadata_buf, &size, fp)) {
@@ -232,7 +239,9 @@ int lttng_live_metadata_create_stream(struct lttng_live_session *session,
        }
        metadata->stream_id = stream_id;
        //TODO: add clock offset option
-       metadata->decoder = ctf_metadata_decoder_create(stderr, 0);
+       //TODO: add (preferably unique) trace's name
+       metadata->decoder = ctf_metadata_decoder_create(stderr, 0,
+               "lttng-live");
        if (!metadata->decoder) {
                goto error;
        }
This page took 0.025719 seconds and 4 git commands to generate.