X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=src%2Fplugins%2Futils%2Ftrimmer%2Ftrimmer.c;h=9a8bffde70c649503c1cc8f7e8d4e9a2be6af206;hb=21f6a44aa276c89662ff38acd13d84239493d6de;hp=2fc365c9650d82ca320acfb6a342fd2ee59de236;hpb=9a2c8b8e0cb6579066b4b8ceb8255cdd5175bb2d;p=babeltrace.git diff --git a/src/plugins/utils/trimmer/trimmer.c b/src/plugins/utils/trimmer/trimmer.c index 2fc365c9..9a8bffde 100644 --- a/src/plugins/utils/trimmer/trimmer.c +++ b/src/plugins/utils/trimmer/trimmer.c @@ -699,13 +699,14 @@ BT_HIDDEN bt_message_iterator_class_initialize_method_status trimmer_msg_iter_init( bt_self_message_iterator *self_msg_iter, bt_self_message_iterator_configuration *config, - bt_self_component *self_comp, bt_self_component_port_output *port) { bt_message_iterator_class_initialize_method_status status; bt_message_iterator_create_from_message_iterator_status msg_iter_status; struct trimmer_iterator *trimmer_it; + bt_self_component *self_comp = + bt_self_message_iterator_borrow_component(self_msg_iter); trimmer_it = g_new0(struct trimmer_iterator, 1); if (!trimmer_it) { @@ -878,7 +879,7 @@ int get_msg_ns_from_origin(const bt_message *msg, int64_t *ns_from_origin, break; case BT_MESSAGE_TYPE_MESSAGE_ITERATOR_INACTIVITY: clock_snapshot = - bt_message_message_iterator_inactivity_borrow_default_clock_snapshot_const( + bt_message_message_iterator_inactivity_borrow_clock_snapshot_const( msg); break; default: @@ -1303,30 +1304,46 @@ create_stream_state_entry( * the support for not having them is * implemented. */ - if (!bt_stream_class_packets_have_beginning_default_clock_snapshot( - sc)) { - BT_COMP_LOGE_APPEND_CAUSE(trimmer_comp->self_comp, - "Unsupported stream: packets have no beginning clock snapshot: " - "stream-addr=%p, " - "stream-id=%" PRIu64 ", " - "stream-name=\"%s\"", - stream, bt_stream_get_id(stream), - bt_stream_get_name(stream)); - status = BT_MESSAGE_ITERATOR_CLASS_NEXT_METHOD_STATUS_ERROR; - goto end; - } + if (bt_stream_class_supports_packets(sc)) { + if (!bt_stream_class_packets_have_beginning_default_clock_snapshot( + sc)) { + BT_COMP_LOGE_APPEND_CAUSE(trimmer_comp->self_comp, + "Unsupported stream: packets have no beginning clock snapshot: " + "stream-addr=%p, " + "stream-id=%" PRIu64 ", " + "stream-name=\"%s\"", + stream, bt_stream_get_id(stream), + bt_stream_get_name(stream)); + status = BT_MESSAGE_ITERATOR_CLASS_NEXT_METHOD_STATUS_ERROR; + goto end; + } - if (!bt_stream_class_packets_have_end_default_clock_snapshot( - sc)) { - BT_COMP_LOGE_APPEND_CAUSE(trimmer_comp->self_comp, - "Unsupported stream: packets have no end clock snapshot: " - "stream-addr=%p, " - "stream-id=%" PRIu64 ", " - "stream-name=\"%s\"", - stream, bt_stream_get_id(stream), - bt_stream_get_name(stream)); - status = BT_MESSAGE_ITERATOR_CLASS_NEXT_METHOD_STATUS_ERROR; - goto end; + if (!bt_stream_class_packets_have_end_default_clock_snapshot( + sc)) { + BT_COMP_LOGE_APPEND_CAUSE(trimmer_comp->self_comp, + "Unsupported stream: packets have no end clock snapshot: " + "stream-addr=%p, " + "stream-id=%" PRIu64 ", " + "stream-name=\"%s\"", + stream, bt_stream_get_id(stream), + bt_stream_get_name(stream)); + status = BT_MESSAGE_ITERATOR_CLASS_NEXT_METHOD_STATUS_ERROR; + goto end; + } + + if (bt_stream_class_supports_discarded_packets(sc) && + !bt_stream_class_discarded_packets_have_default_clock_snapshots(sc)) { + BT_COMP_LOGE_APPEND_CAUSE(trimmer_comp->self_comp, + "Unsupported stream: discarded packets " + "have no clock snapshots: " + "stream-addr=%p, " + "stream-id=%" PRIu64 ", " + "stream-name=\"%s\"", + stream, bt_stream_get_id(stream), + bt_stream_get_name(stream)); + status = BT_MESSAGE_ITERATOR_CLASS_NEXT_METHOD_STATUS_ERROR; + goto end; + } } if (bt_stream_class_supports_discarded_events(sc) && @@ -1342,20 +1359,6 @@ create_stream_state_entry( goto end; } - if (bt_stream_class_supports_discarded_packets(sc) && - !bt_stream_class_discarded_packets_have_default_clock_snapshots(sc)) { - BT_COMP_LOGE_APPEND_CAUSE(trimmer_comp->self_comp, - "Unsupported stream: discarded packets " - "have no clock snapshots: " - "stream-addr=%p, " - "stream-id=%" PRIu64 ", " - "stream-name=\"%s\"", - stream, bt_stream_get_id(stream), - bt_stream_get_name(stream)); - status = BT_MESSAGE_ITERATOR_CLASS_NEXT_METHOD_STATUS_ERROR; - goto end; - } - sstate = g_new0(struct trimmer_iterator_stream_state, 1); if (!sstate) { status = BT_MESSAGE_ITERATOR_CLASS_NEXT_METHOD_STATUS_MEMORY_ERROR;