From: Daniel Stenberg Date: Sat, 22 Nov 2025 21:44:39 +0000 (+0100) Subject: tool_msgs: make voutf() use stack instead of heap X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=f13f320dee7ea37bc01cc7b4282450b6165373c9;p=thirdparty%2Fcurl.git tool_msgs: make voutf() use stack instead of heap For printf()ing the message to show. Closes #19651 --- diff --git a/src/tool_msgs.c b/src/tool_msgs.c index 896788745c..ae0b6b9835 100644 --- a/src/tool_msgs.c +++ b/src/tool_msgs.c @@ -42,18 +42,15 @@ static void voutf(const char *prefix, const char *fmt, va_list ap) { - size_t width = (get_terminal_columns() - strlen(prefix)); size_t len; char *ptr; - char *print_buffer; + char buffer[1024]; + size_t termw = get_terminal_columns(); + size_t prefw = strlen(prefix); + size_t width = termw > prefw ? termw - prefw : SIZE_MAX; DEBUGASSERT(!strchr(fmt, '\n')); - - print_buffer = curl_mvaprintf(fmt, ap); - if(!print_buffer) - return; - len = strlen(print_buffer); - - ptr = print_buffer; + len = curl_mvsnprintf(buffer, sizeof(buffer), fmt, ap); + ptr = buffer; while(len > 0) { fputs(prefix, tool_stderr); @@ -79,7 +76,6 @@ static void voutf(const char *prefix, len = 0; } } - curl_free(print_buffer); } /*