ctf.fs: bt_ctf_notif_iter_create(): assert() that all medops exist
[babeltrace.git] / formats / ctf / ir / validation.c
index 789a6f57e9740654f7da3df5e9dca00cfc5ba7ae..dc2a3a931cc0ba91714c828ae573cfbf7038b534 100644 (file)
@@ -28,8 +28,8 @@
 #include <babeltrace/ctf-ir/resolve-internal.h>
 #include <babeltrace/ctf-ir/trace-internal.h>
 #include <babeltrace/ctf-ir/stream-class-internal.h>
-#include <babeltrace/ctf-ir/event-internal.h>
 #include <babeltrace/ctf-ir/field-types-internal.h>
+#include <babeltrace/ctf-ir/event-class-internal.h>
 #include <babeltrace/values.h>
 #include <babeltrace/babeltrace-internal.h>
 #include <babeltrace/ref.h>
@@ -563,10 +563,14 @@ void bt_ctf_validation_replace_types(struct bt_ctf_trace *trace,
                enum bt_ctf_validation_flag replace_flags)
 {
        if ((replace_flags & BT_CTF_VALIDATION_FLAG_TRACE) && trace) {
+               bt_ctf_field_type_freeze(trace->packet_header_type);
                BT_MOVE(trace->packet_header_type, output->packet_header_type);
        }
 
        if ((replace_flags & BT_CTF_VALIDATION_FLAG_STREAM) && stream_class) {
+               bt_ctf_field_type_freeze(stream_class->packet_context_type);
+               bt_ctf_field_type_freeze(stream_class->event_header_type);
+               bt_ctf_field_type_freeze(stream_class->event_context_type);
                BT_MOVE(stream_class->packet_context_type,
                        output->packet_context_type);
                BT_MOVE(stream_class->event_header_type,
@@ -576,6 +580,8 @@ void bt_ctf_validation_replace_types(struct bt_ctf_trace *trace,
        }
 
        if ((replace_flags & BT_CTF_VALIDATION_FLAG_EVENT) && event_class) {
+               bt_ctf_field_type_freeze(event_class->context);
+               bt_ctf_field_type_freeze(event_class->fields);
                BT_MOVE(event_class->context, output->event_context_type);
                BT_MOVE(event_class->fields, output->event_payload_type);
        }
This page took 0.047558 seconds and 4 git commands to generate.