bugfix for buffer_fadd
[Evergreen.git] / OpenSRF / src / utils / utils.c
index 606aaf6..60d665a 100644 (file)
@@ -107,7 +107,10 @@ int buffer_fadd(growing_buffer* gb, const char* format, ... ) {
 
        va_list args;
 
-       int len = strlen(format) + 1024;
+       va_start(args, format);
+       int len = vsnprintf(NULL, 0, format, args);
+       len += 1;
+
        char buf[len];
        memset(buf, 0, len);
 
@@ -119,7 +122,6 @@ int buffer_fadd(growing_buffer* gb, const char* format, ... ) {
 
 }
 
-
 int buffer_add(growing_buffer* gb, char* data) {