Signed-off-by: Julien Desfossez <jdesfossez@efficios.com>
Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
packet_context = bt_ctf_packet_get_context(packet);
if (!packet_context) {
packet_context = bt_ctf_packet_get_context(packet);
if (!packet_context) {
- fprintf(err, "[error] %s in %s:%d\n", __func__, __FILE__,
- __LINE__);
- goto error;
}
writer_stream_class = bt_ctf_stream_get_class(writer_stream);
}
writer_stream_class = bt_ctf_stream_get_class(writer_stream);
+ /* Optional field, so it can fail silently. */
field = bt_ctf_event_get_header(event);
field = bt_ctf_event_get_header(event);
- if (!field) {
- fprintf(err, "[error] %s in %s:%d\n", __func__,
- __FILE__, __LINE__);
- goto error;
- }
-
- ret = ctf_copy_event_header(err, event, writer_event_class,
- writer_event, field);
- if (ret) {
- fprintf(err, "[error] %s in %s:%d\n", __func__,
- __FILE__, __LINE__);
- goto error;
+ if (field) {
+ ret = ctf_copy_event_header(err, event, writer_event_class,
+ writer_event, field);
+ if (ret) {
+ fprintf(err, "[error] %s in %s:%d\n", __func__,
+ __FILE__, __LINE__);
+ goto error;
+ }
+ BT_PUT(field);
/* Optional field, so it can fail silently. */
field = bt_ctf_event_get_stream_event_context(event);
/* Optional field, so it can fail silently. */
field = bt_ctf_event_get_stream_event_context(event);
/* Optional field, so it can fail silently. */
field = bt_ctf_event_get_event_context(event);
/* Optional field, so it can fail silently. */
field = bt_ctf_event_get_event_context(event);
- copy_field = bt_ctf_field_copy(field);
- if (copy_field) {
+ if (field) {
+ copy_field = bt_ctf_field_copy(field);
+ if (!copy_field) {
+ fprintf(err, "[error] %s in %s:%d\n", __func__,
+ __FILE__, __LINE__);
+ goto error;
+ }
ret = bt_ctf_event_set_event_context(writer_event, copy_field);
if (ret < 0) {
fprintf(err, "[error] %s in %s:%d\n", __func__,
ret = bt_ctf_event_set_event_context(writer_event, copy_field);
if (ret < 0) {
fprintf(err, "[error] %s in %s:%d\n", __func__,
goto error;
}
BT_PUT(copy_field);
goto error;
}
BT_PUT(copy_field);
field = bt_ctf_event_get_event_payload(event);
if (!field) {
field = bt_ctf_event_get_event_payload(event);
if (!field) {