Fix -Wjump-misses-init warnings
[babeltrace.git] / src / plugins / ctf / fs-sink / fs-sink-trace.c
index d41e1d9f31a4c2ed3fe47f0f24539a3a2d498b3c..1bc01d2fe8755e6430993792899bd081acdd6ede 100644 (file)
@@ -133,6 +133,15 @@ GString *make_unique_trace_path(const char *path)
        return unique_path;
 }
 
+/*
+ * Disable `deprecated-declarations` warnings for
+ * lttng_validate_datetime() because we're using `GTimeVal` and
+ * g_time_val_from_iso8601() which are deprecated since GLib 2.56
+ * (Babeltrace supports older versions too).
+ */
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
+
 /*
  * Validate that the input string `datetime` is an ISO8601-compliant string (the
  * format used by LTTng in the metadata).
@@ -162,6 +171,8 @@ end:
        return ret;
 }
 
+#pragma GCC diagnostic pop
+
 static
 int append_lttng_trace_path_ust_uid(const struct fs_sink_trace *trace,
                GString *path, const bt_trace *tc)
@@ -178,9 +189,9 @@ int append_lttng_trace_path_ust_uid(const struct fs_sink_trace *trace,
        g_string_append_printf(path, G_DIR_SEPARATOR_S "%" PRId64,
                bt_value_integer_signed_get(v));
 
-       v = bt_trace_borrow_environment_entry_value_by_name_const(tc, "isa_length");
+       v = bt_trace_borrow_environment_entry_value_by_name_const(tc, "architecture_bit_width");
        if (!v || !bt_value_is_signed_integer(v)) {
-               BT_COMP_LOGI_STR("Couldn't get environment value: name=\"isa_length\"");
+               BT_COMP_LOGI_STR("Couldn't get environment value: name=\"architecture_bit_width\"");
                goto error;
        }
 
@@ -396,6 +407,7 @@ static
 GString *make_trace_path_rel(const struct fs_sink_trace *trace)
 {
        GString *path = NULL;
+       const char *trace_name;
 
        if (trace->fs_sink->assume_single_trace) {
                /* Use output directory directly */
@@ -410,7 +422,7 @@ GString *make_trace_path_rel(const struct fs_sink_trace *trace)
        }
 
        /* Otherwise, use the trace name, if available. */
-       const char *trace_name = bt_trace_get_name(trace->ir_trace);
+       trace_name = bt_trace_get_name(trace->ir_trace);
        if (trace_name) {
                path = g_string_new(trace_name);
                goto end;
@@ -506,7 +518,7 @@ void fs_sink_trace_destroy(struct fs_sink_trace *trace)
        fh = fopen(trace->metadata_path->str, "wb");
        if (!fh) {
                BT_COMP_LOGF_ERRNO("In trace destruction listener: "
-                       "cannot open metadata file for writing",
+                       "cannot open metadata file for writing",
                        ": path=\"%s\"", trace->metadata_path->str);
                abort();
        }
@@ -514,7 +526,7 @@ void fs_sink_trace_destroy(struct fs_sink_trace *trace)
        len = fwrite(tsdl->str, sizeof(*tsdl->str), tsdl->len, fh);
        if (len != tsdl->len) {
                BT_COMP_LOGF_ERRNO("In trace destruction listener: "
-                       "cannot write metadata file",
+                       "cannot write metadata file",
                        ": path=\"%s\"", trace->metadata_path->str);
                abort();
        }
@@ -528,28 +540,26 @@ void fs_sink_trace_destroy(struct fs_sink_trace *trace)
                trace->path = NULL;
        }
 
-       g_string_free(trace->metadata_path, TRUE);
-       trace->metadata_path = NULL;
-
-       fs_sink_ctf_trace_destroy(trace->trace);
-       trace->trace = NULL;
-       g_free(trace);
-
-end:
        if (fh) {
                int ret = fclose(fh);
 
                if (ret != 0) {
                        BT_COMP_LOGW_ERRNO("In trace destruction listener: "
-                               "cannot close metadata file",
+                               "cannot close metadata file",
                                ": path=\"%s\"", trace->metadata_path->str);
                }
        }
 
-       if (tsdl) {
-               g_string_free(tsdl, TRUE);
-       }
+       g_string_free(trace->metadata_path, TRUE);
+       trace->metadata_path = NULL;
+
+       fs_sink_ctf_trace_destroy(trace->trace);
+       trace->trace = NULL;
+       g_free(trace);
 
+       g_string_free(tsdl, TRUE);
+
+end:
        return;
 }
 
This page took 0.029027 seconds and 4 git commands to generate.