Skip to content

Commit d4a4cbe

Browse files
committed
mp: fixed count when empty data
Signed-off-by: Marat Abrarov <abrarov@gmail.com>
1 parent 74e686c commit d4a4cbe

File tree

1 file changed

+14
-12
lines changed

1 file changed

+14
-12
lines changed

src/flb_mp.c

Lines changed: 14 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -313,27 +313,29 @@ int flb_mp_normalize_log_buffer_groups(const void *in_buf, size_t in_size,
313313

314314
int flb_mp_count_remaining(const void *data, size_t bytes, size_t *remaining_bytes)
315315
{
316-
size_t remaining;
316+
size_t remaining = 0;
317317
int count = 0;
318318
mpack_reader_t reader;
319319

320-
mpack_reader_init_data(&reader, (const char *) data, bytes);
321-
for (;;) {
322-
remaining = mpack_reader_remaining(&reader, NULL);
323-
if (!remaining) {
324-
break;
325-
}
326-
mpack_discard(&reader);
327-
if (mpack_reader_error(&reader)) {
328-
break;
320+
if (data) {
321+
mpack_reader_init_data(&reader, (const char *) data, bytes);
322+
for (;;) {
323+
remaining = mpack_reader_remaining(&reader, NULL);
324+
if (!remaining) {
325+
break;
326+
}
327+
mpack_discard(&reader);
328+
if (mpack_reader_error(&reader)) {
329+
break;
330+
}
331+
count++;
329332
}
330-
count++;
333+
mpack_reader_destroy(&reader);
331334
}
332335

333336
if (remaining_bytes) {
334337
*remaining_bytes = remaining;
335338
}
336-
mpack_reader_destroy(&reader);
337339
return count;
338340
}
339341

0 commit comments

Comments
 (0)