src.ctf.fs: use ctf_msg_iter_up in add_ds_file_to_ds_file_group
[babeltrace.git] / src / plugins / ctf / fs-src / fs.cpp
index b1ac21d1e47e067576691c1199f5f945d2adb09e..6b16533cc5bb7e6e2dc6b3ff579d7ae21700857e 100644 (file)
@@ -41,10 +41,6 @@ static void ctf_fs_msg_iter_data_destroy(struct ctf_fs_msg_iter_data *msg_iter_d
         return;
     }
 
-    if (msg_iter_data->msg_iter) {
-        ctf_msg_iter_destroy(msg_iter_data->msg_iter);
-    }
-
     delete msg_iter_data;
 }
 
@@ -52,9 +48,8 @@ static bt_message_iterator_class_next_method_status
 ctf_fs_iterator_next_one(struct ctf_fs_msg_iter_data *msg_iter_data, const bt_message **out_msg)
 {
     bt_message_iterator_class_next_method_status status;
-    enum ctf_msg_iter_status msg_iter_status;
-
-    msg_iter_status = ctf_msg_iter_get_next_message(msg_iter_data->msg_iter, out_msg);
+    const auto msg_iter_status =
+        ctf_msg_iter_get_next_message(msg_iter_data->msg_iter.get(), out_msg);
 
     switch (msg_iter_status) {
     case CTF_MSG_ITER_STATUS_OK:
@@ -168,7 +163,7 @@ ctf_fs_iterator_seek_beginning(bt_self_message_iterator *it)
 
         BT_ASSERT(msg_iter_data);
 
-        ctf_msg_iter_reset(msg_iter_data->msg_iter);
+        ctf_msg_iter_reset(msg_iter_data->msg_iter.get());
         ctf_fs_ds_group_medops_data_reset(msg_iter_data->msg_iter_medops_data.get());
 
         return BT_MESSAGE_ITERATOR_CLASS_SEEK_BEGINNING_METHOD_STATUS_OK;
@@ -496,7 +491,7 @@ static int add_ds_file_to_ds_file_group(struct ctf_fs_trace *ctf_fs_trace, const
     int ret;
     ctf_fs_ds_file_info::UP ds_file_info;
     ctf_fs_ds_index::UP index;
-    struct ctf_msg_iter *msg_iter = NULL;
+    ctf_msg_iter_up msg_iter;
     struct ctf_stream_class *sc = NULL;
     struct ctf_msg_iter_packet_properties props;
 
@@ -520,9 +515,9 @@ static int add_ds_file_to_ds_file_group(struct ctf_fs_trace *ctf_fs_trace, const
         goto error;
     }
 
-    ctf_msg_iter_set_dry_run(msg_iter, true);
+    ctf_msg_iter_set_dry_run(msg_iter.get(), true);
 
-    ret = ctf_msg_iter_get_packet_properties(msg_iter, &props);
+    ret = ctf_msg_iter_get_packet_properties(msg_iter.get(), &props);
     if (ret) {
         BT_CPPLOGE_APPEND_CAUSE_SPEC(
             ctf_fs_trace->logger,
@@ -553,7 +548,7 @@ static int add_ds_file_to_ds_file_group(struct ctf_fs_trace *ctf_fs_trace, const
         goto error;
     }
 
-    index = ctf_fs_ds_file_build_index(ds_file.get(), ds_file_info.get(), msg_iter);
+    index = ctf_fs_ds_file_build_index(ds_file.get(), ds_file_info.get(), msg_iter.get());
     if (!index) {
         BT_CPPLOGE_APPEND_CAUSE_SPEC(ctf_fs_trace->logger, "Failed to index CTF stream file \'{}\'",
                                      ds_file->file->path);
@@ -621,10 +616,6 @@ error:
     ret = -1;
 
 end:
-    if (msg_iter) {
-        ctf_msg_iter_destroy(msg_iter);
-    }
-
     return ret;
 }
 
@@ -1117,9 +1108,10 @@ static int decode_clock_snapshot_after_event(struct ctf_fs_trace *ctf_fs_trace,
     BT_ASSERT(ctf_fs_trace->metadata->tc);
 
     msg_iter = ctf_msg_iter_create(
-        ctf_fs_trace->metadata->tc,
-        bt_common_get_page_size(static_cast<int>(ctf_fs_trace->logger.level())) * 8,
-        ctf_fs_ds_file_medops, ds_file.get(), NULL, ctf_fs_trace->logger);
+                   ctf_fs_trace->metadata->tc,
+                   bt_common_get_page_size(static_cast<int>(ctf_fs_trace->logger.level())) * 8,
+                   ctf_fs_ds_file_medops, ds_file.get(), NULL, ctf_fs_trace->logger)
+                   .release();
     if (!msg_iter) {
         /* ctf_msg_iter_create() logs errors. */
         ret = -1;
This page took 0.037414 seconds and 4 git commands to generate.