src.ctf.fs: make ctf_fs_metadata::trace_class a bt2::TraceClass::Shared
authorSimon Marchi <simon.marchi@efficios.com>
Tue, 5 Dec 2023 04:57:52 +0000 (04:57 +0000)
committerSimon Marchi <simon.marchi@efficios.com>
Wed, 17 Apr 2024 17:57:53 +0000 (13:57 -0400)
Change-Id: I1ee6a21525757197213c35acfa1f0a17d7052541
Signed-off-by: Simon Marchi <simon.marchi@efficios.com>
Reviewed-on: https://review.lttng.org/c/babeltrace/+/8284
Reviewed-by: Philippe Proulx <eeppeliteloop@gmail.com>
Reviewed-on: https://review.lttng.org/c/babeltrace/+/12322
Tested-by: jenkins <jenkins@lttng.org>
src/plugins/ctf/fs-src/fs.cpp
src/plugins/ctf/fs-src/fs.hpp
src/plugins/ctf/fs-src/metadata.cpp

index bb5d52da046248abd97d262897c75ba47f9d0613..41b311c1833b1a3506049f6c4ecbdaaedf863ca3 100644 (file)
@@ -755,7 +755,7 @@ static ctf_fs_trace::UP ctf_fs_trace_create(const char *path, const char *name,
     }
 
     if (ctf_fs_trace->metadata->trace_class) {
-        bt_trace *trace = bt_trace_create(ctf_fs_trace->metadata->trace_class);
+        bt_trace *trace = bt_trace_create(ctf_fs_trace->metadata->trace_class->libObjPtr());
         if (!trace) {
             goto error;
         }
index 8db757aaa2b2d6381c907b91f203fbfedea65123..49223bfea119d4e85ced720d854fe543225e86ce 100644 (file)
@@ -27,8 +27,7 @@ struct ctf_fs_metadata
     /* Owned by this */
     ctf_metadata_decoder_up decoder;
 
-    /* Owned by this */
-    bt_trace_class *trace_class = nullptr;
+    bt2::TraceClass::Shared trace_class;
 
     /* Weak (owned by `decoder` above) */
     struct ctf_trace_class *tc = nullptr;
index abddc2bb06952c5d9b3feaa4faab8abdf2288690..4a99ca7eea4faee5bf52d03d678ec7dcf6548fc4 100644 (file)
@@ -62,7 +62,6 @@ int ctf_fs_metadata_set_trace_class(bt_self_component *self_comp, struct ctf_fs_
                                     const ctf::src::ClkClsCfg& clkClsCfg)
 {
     int ret = 0;
-    bt2::TraceClass::Shared traceCls;
     ctf_metadata_decoder_config decoder_config {ctf_fs_trace->logger};
 
     decoder_config.self_comp = self_comp;
@@ -90,10 +89,8 @@ int ctf_fs_metadata_set_trace_class(bt_self_component *self_comp, struct ctf_fs_
         goto end;
     }
 
-    traceCls = ctf_metadata_decoder_get_ir_trace_class(ctf_fs_trace->metadata->decoder.get());
-    if (traceCls) {
-        ctf_fs_trace->metadata->trace_class = traceCls.release().libObjPtr();
-    }
+    ctf_fs_trace->metadata->trace_class =
+        ctf_metadata_decoder_get_ir_trace_class(ctf_fs_trace->metadata->decoder.get());
     BT_ASSERT(!self_comp || ctf_fs_trace->metadata->trace_class);
 
     ctf_fs_trace->metadata->tc =
@@ -112,9 +109,5 @@ int ctf_fs_metadata_init(struct ctf_fs_metadata *)
 
 void ctf_fs_metadata_fini(struct ctf_fs_metadata *metadata)
 {
-    if (metadata->trace_class) {
-        BT_TRACE_CLASS_PUT_REF_AND_RESET(metadata->trace_class);
-    }
-
     metadata->decoder.reset();
 }
This page took 0.026378 seconds and 4 git commands to generate.