-retry:
- ctf_dummy_pos(pos, &dummy);
- write_event_header(&dummy, line, &tline, len, &tlen, &ts);
- ctf_align_pos(&dummy, sizeof(uint8_t) * CHAR_BIT);
- ctf_move_pos(&dummy, tlen * CHAR_BIT);
- if (ctf_pos_packet(&dummy)) {
- ctf_pos_pad_packet(pos);
- write_packet_header(pos, s_uuid);
- write_packet_context(pos);
- if (attempt++ == 1) {
- fprintf(stdout, "[Error] Line too large for packet size (%zukB) (discarded)\n",
- pos->packet_size / CHAR_BIT / 1024);
- return;
+
+ for (;;) {
+ ctf_dummy_pos(pos, &dummy);
+ write_event_header(&dummy, line, &tline, len, &tlen, &ts);
+ ctf_align_pos(&dummy, sizeof(uint8_t) * CHAR_BIT);
+ ctf_move_pos(&dummy, tlen * CHAR_BIT);
+ if (ctf_pos_packet(&dummy)) {
+ ctf_pos_pad_packet(pos);
+ write_packet_header(pos, s_uuid);
+ write_packet_context(pos);
+ if (attempt++ == 1) {
+ fprintf(stderr, "[Error] Line too large for packet size (%" PRIu64 "kB) (discarded)\n",
+ pos->packet_size / CHAR_BIT / 1024);
+ return;
+ }
+ continue;
+ } else {
+ break;