diff --git a/server/modules/routing/avro/avro_schema.c b/server/modules/routing/avro/avro_schema.c index dd5c1e9fc..9595e83b7 100644 --- a/server/modules/routing/avro/avro_schema.c +++ b/server/modules/routing/avro/avro_schema.c @@ -481,7 +481,15 @@ static const char *extract_field_name(const char* ptr, char* dest, size_t size) if (ptr > start) { /** Valid identifier */ - snprintf(dest, size, "%.*s", (int)(ptr - start), start); + size_t bytes = ptr - start; + + if (bt) + { + bytes--; + } + + memcpy(dest, start, bytes); + dest[bytes] = '\0'; make_valid_avro_identifier(dest); ptr = next_field_definition(ptr);