ctf.fs: bt_ctf_notif_iter_create(): assert() that all medops exist
[babeltrace.git] / formats / ctf / ir / fields.c
index cf08e7807af32fc2ac99822b7a65c4a5acc85f50..0ad52a020dc05a79095c506ca13941e016187190 100644 (file)
@@ -1903,6 +1903,10 @@ int bt_ctf_field_integer_serialize(struct bt_ctf_field *field,
        struct bt_ctf_field_integer *integer = container_of(field,
                struct bt_ctf_field_integer, parent);
 
+       if (!bt_ctf_field_generic_is_set(field)) {
+               ret = -1;
+               goto end;
+       }
 retry:
        ret = ctf_integer_write(&pos->parent, &integer->definition.p);
        if (ret == -EFAULT) {
@@ -1938,6 +1942,10 @@ int bt_ctf_field_floating_point_serialize(struct bt_ctf_field *field,
        struct bt_ctf_field_floating_point *floating_point = container_of(field,
                struct bt_ctf_field_floating_point, parent);
 
+       if (!bt_ctf_field_generic_is_set(field)) {
+               ret = -1;
+               goto end;
+       }
 retry:
        ret = ctf_float_write(&pos->parent, &floating_point->definition.p);
        if (ret == -EFAULT) {
@@ -1979,20 +1987,20 @@ int bt_ctf_field_structure_serialize(struct bt_ctf_field *field,
        }
 
        for (i = 0; i < structure->fields->len; i++) {
-               struct bt_ctf_field *field = g_ptr_array_index(
+               struct bt_ctf_field *member = g_ptr_array_index(
                        structure->fields, i);
 
-               ret = bt_ctf_field_serialize(field, pos);
+               ret = bt_ctf_field_serialize(member, pos);
                if (ret) {
                        const char *name;
-                       struct bt_ctf_field_type *field_type =
+                       struct bt_ctf_field_type *structure_type =
                                        bt_ctf_field_get_type(field);
 
-                       (void) bt_ctf_field_type_structure_get_field(field_type,
-                                       &name, NULL, i);
+                       (void) bt_ctf_field_type_structure_get_field(
+                                       structure_type, &name, NULL, i);
                        fprintf(stderr, "Field %s failed to serialize\n",
                                        name ? name : "NULL");
-                       bt_put(field_type);
+                       bt_put(structure_type);
                        break;
                }
        }
This page took 0.024022 seconds and 4 git commands to generate.