#include "query.h"
#include <stdbool.h>
-#include <babeltrace/assert-internal.h>
+#include <babeltrace2/assert-internal.h>
#include "metadata.h"
#include "../common/metadata/decoder.h"
-#include <babeltrace/common-internal.h>
-#include <babeltrace/babeltrace-internal.h>
-#include <babeltrace/babeltrace.h>
+#include <babeltrace2/common-internal.h>
+#include <babeltrace2/babeltrace-internal.h>
+#include <babeltrace2/babeltrace.h>
#include "fs.h"
#define BT_LOG_TAG "PLUGIN-CTF-FS-QUERY-SRC"
stream_range->begin_ns = first_ds_index_entry->timestamp_begin_ns;
stream_range->end_ns = last_ds_index_entry->timestamp_end_ns;
- stream_range->set = true;
- if (stream_range->set) {
- ret = add_range(group_info, stream_range, "range-ns");
- if (ret) {
- goto end;
- }
+ /*
+ * If any of the begin and end timestamps is not set it means that
+ * packets don't include `timestamp_begin` _and_ `timestamp_end` fields
+ * in their packet context so we can't set the range.
+ */
+ stream_range->set = stream_range->begin_ns != UINT64_C(-1) &&
+ stream_range->end_ns != UINT64_C(-1);
+
+ ret = add_range(group_info, stream_range, "range-ns");
+ if (ret) {
+ goto end;
}
status = bt_value_map_insert_entry(group_info, "paths",
goto end;
}
+ status = bt_value_array_append_element(file_groups, group_info);
+ bt_value_put_ref(group_info);
+ if (status != BT_VALUE_STATUS_OK) {
+ goto end;
+ }
+
if (group_range.set) {
trace_range.begin_ns = min(trace_range.begin_ns,
group_range.begin_ns);
trace_intersection.end_ns = min(trace_intersection.end_ns,
group_range.end_ns);
trace_intersection.set = true;
- status = bt_value_array_append_element(
- file_groups,
- group_info);
- bt_value_put_ref(group_info);
- if (status != BT_VALUE_STATUS_OK) {
- goto end;
- }
}
}