From 24480b85b3a57fdab3964b0240b83bc2d771500f Mon Sep 17 00:00:00 2001 From: Gregor Jasny Date: Mon, 24 Oct 2022 22:34:02 +0200 Subject: [PATCH] Fix variable argument handling (#1042) --- src/apps/relay/libtelnet.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/apps/relay/libtelnet.c b/src/apps/relay/libtelnet.c index 65e50b8e..b28410f7 100644 --- a/src/apps/relay/libtelnet.c +++ b/src/apps/relay/libtelnet.c @@ -1483,12 +1483,12 @@ int telnet_vprintf(telnet_t *telnet, const char *fmt, va_list va) { if (output == 0) { _error(telnet, __LINE__, __func__, TELNET_ENOMEM, 0, "malloc() failed: %s", strerror(errno)); + va_end(va2); return -1; } rs = vsnprintf(output, rs + 1, fmt, va2); } va_end(va2); - va_end(va); /* send */ for (l = i = 0; i != rs; ++i) { @@ -1552,12 +1552,12 @@ int telnet_raw_vprintf(telnet_t *telnet, const char *fmt, va_list va) { if (output == 0) { _error(telnet, __LINE__, __func__, TELNET_ENOMEM, 0, "malloc() failed: %s", strerror(errno)); + va_end(va2); return -1; } rs = vsnprintf(output, rs + 1, fmt, va2); } va_end(va2); - va_end(va); /* send out the formatted data */ telnet_send(telnet, output, rs);