--- a/src/ucx/printf.c Sat Mar 25 17:18:51 2023 +0100 +++ b/src/ucx/printf.c Fri May 05 18:02:11 2023 +0200 @@ -31,9 +31,16 @@ #include <stdio.h> #include <string.h> -#define UCX_PRINTF_BUFSIZE 256 +#ifndef CX_PRINTF_SBO_SIZE +#define CX_PRINTF_SBO_SIZE 512 +#endif -int cx_fprintf(void *stream, cx_write_func wfc, char const *fmt, ...) { +int cx_fprintf( + void *stream, + cx_write_func wfc, + char const *fmt, + ... +) { int ret; va_list ap; va_start(ap, fmt); @@ -42,14 +49,19 @@ return ret; } -int cx_vfprintf(void *stream, cx_write_func wfc, char const *fmt, va_list ap) { - char buf[UCX_PRINTF_BUFSIZE]; +int cx_vfprintf( + void *stream, + cx_write_func wfc, + char const *fmt, + va_list ap +) { + char buf[CX_PRINTF_SBO_SIZE]; va_list ap2; va_copy(ap2, ap); - int ret = vsnprintf(buf, UCX_PRINTF_BUFSIZE, fmt, ap); + int ret = vsnprintf(buf, CX_PRINTF_SBO_SIZE, fmt, ap); if (ret < 0) { return ret; - } else if (ret < UCX_PRINTF_BUFSIZE) { + } else if (ret < CX_PRINTF_SBO_SIZE) { return (int) wfc(buf, 1, ret, stream); } else { int len = ret + 1; @@ -67,7 +79,11 @@ return ret; } -cxmutstr cx_asprintf_a(CxAllocator *allocator, char const *fmt, ...) { +cxmutstr cx_asprintf_a( + CxAllocator const *allocator, + char const *fmt, + ... +) { va_list ap; cxmutstr ret; va_start(ap, fmt); @@ -76,15 +92,19 @@ return ret; } -cxmutstr cx_vasprintf_a(CxAllocator *a, char const *fmt, va_list ap) { +cxmutstr cx_vasprintf_a( + CxAllocator const *a, + char const *fmt, + va_list ap +) { cxmutstr s; s.ptr = NULL; s.length = 0; - char buf[UCX_PRINTF_BUFSIZE]; + char buf[CX_PRINTF_SBO_SIZE]; va_list ap2; va_copy(ap2, ap); - int ret = vsnprintf(buf, UCX_PRINTF_BUFSIZE, fmt, ap); - if (ret > 0 && ret < UCX_PRINTF_BUFSIZE) { + int ret = vsnprintf(buf, CX_PRINTF_SBO_SIZE, fmt, ap); + if (ret > 0 && ret < CX_PRINTF_SBO_SIZE) { s.ptr = cxMalloc(a, ret + 1); if (s.ptr) { s.length = (size_t) ret;