Fix: maybe-uninitialized warnings in translate-trace-ir-to-ctf-ir.c
[babeltrace.git] / plugins / ctf / fs-sink / translate-trace-ir-to-ctf-ir.c
index fe3725f84d73c172795309c63a94743a5c7acaa0..72f5e4a877db00f766f08224ad3a2c49d48fc735 100644 (file)
@@ -172,6 +172,7 @@ int create_relative_field_ref(struct ctx *ctx,
 {
        int ret = 0;
        struct fs_sink_ctf_field_class *tgt_fc = NULL;
+       enum fs_sink_ctf_field_class_type tgt_fc_type;
        uint64_t i;
        int64_t si;
        const char *tgt_fc_name = NULL;
@@ -200,6 +201,7 @@ int create_relative_field_ref(struct ctx *ctx,
        }
 
        i = 0;
+       tgt_fc_type = tgt_fc->type;
 
        while (i < bt_field_path_get_item_count(tgt_ir_field_path)) {
                const bt_field_path_item *fp_item =
@@ -210,7 +212,7 @@ int create_relative_field_ref(struct ctx *ctx,
                BT_ASSERT(tgt_fc);
                BT_ASSERT(fp_item);
 
-               switch (tgt_fc->type) {
+               switch (tgt_fc_type) {
                case FS_SINK_CTF_FIELD_CLASS_TYPE_STRUCT:
                        BT_ASSERT(bt_field_path_item_get_type(fp_item) ==
                                BT_FIELD_PATH_ITEM_TYPE_INDEX);
@@ -248,7 +250,7 @@ int create_relative_field_ref(struct ctx *ctx,
        }
 
        BT_ASSERT(tgt_fc);
-       BT_ASSERT(tgt_fc->type == FS_SINK_CTF_FIELD_CLASS_TYPE_INT);
+       BT_ASSERT(tgt_fc_type == FS_SINK_CTF_FIELD_CLASS_TYPE_INT);
        BT_ASSERT(tgt_fc_name);
 
        /* Find target field class having this name in current context */
@@ -900,9 +902,12 @@ int set_field_refs(struct fs_sink_ctf_field_class *fc, const char *fc_name,
                struct fs_sink_ctf_field_class *parent_fc)
 {
        int ret = 0;
+       enum fs_sink_ctf_field_class_type fc_type;
        BT_ASSERT(fc);
 
-       switch (fc->type) {
+       fc_type = fc->type;
+
+       switch (fc_type) {
        case FS_SINK_CTF_FIELD_CLASS_TYPE_STRUCT:
        case FS_SINK_CTF_FIELD_CLASS_TYPE_VARIANT:
        {
@@ -912,7 +917,7 @@ int set_field_refs(struct fs_sink_ctf_field_class *fc, const char *fc_name,
                struct fs_sink_ctf_field_class_variant *var_fc;
                struct fs_sink_ctf_named_field_class *named_fc;
 
-               if (fc->type == FS_SINK_CTF_FIELD_CLASS_TYPE_STRUCT) {
+               if (fc_type == FS_SINK_CTF_FIELD_CLASS_TYPE_STRUCT) {
                        struct_fc = (void *) fc;
                        len = struct_fc->members->len;
                } else {
@@ -925,7 +930,7 @@ int set_field_refs(struct fs_sink_ctf_field_class *fc, const char *fc_name,
                }
 
                for (i = 0; i < len; i++) {
-                       if (fc->type == FS_SINK_CTF_FIELD_CLASS_TYPE_STRUCT) {
+                       if (fc_type == FS_SINK_CTF_FIELD_CLASS_TYPE_STRUCT) {
                                named_fc = fs_sink_ctf_field_class_struct_borrow_member_by_index(
                                        struct_fc, i);
                        } else {
@@ -948,7 +953,7 @@ int set_field_refs(struct fs_sink_ctf_field_class *fc, const char *fc_name,
                struct fs_sink_ctf_field_class_array_base *array_base_fc =
                        (void *) fc;
 
-               if (fc->type == FS_SINK_CTF_FIELD_CLASS_TYPE_SEQUENCE) {
+               if (fc_type == FS_SINK_CTF_FIELD_CLASS_TYPE_SEQUENCE) {
                        ret = set_field_ref(fc, fc_name, parent_fc);
                        if (ret) {
                                goto end;
This page took 0.023921 seconds and 4 git commands to generate.