[LEDE-DEV] [PATCH 2/2] libubox: Plug a small memory leak.

Rosen Penev rosenp at gmail.com
Thu Feb 1 22:52:12 PST 2018


va_end was not called if calloc fails.

Signed-off-by: Rosen Penev <rosenp at gmail.com>
---
 utils.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/utils.c b/utils.c
index 765dd8b..c22250d 100644
--- a/utils.c
+++ b/utils.c
@@ -47,8 +47,11 @@ void *__calloc_a(size_t len, ...)
 	va_end(ap1);
 
 	ptr = calloc(1, alloc_len);
-	if (!ptr)
+	if (!ptr) {
+		va_end(ap);
 		return NULL;
+	}
+
 	alloc_len = 0;
 	foreach_arg(ap, cur_addr, cur_len, &ret, len) {
 		*cur_addr = &ptr[alloc_len];
-- 
2.7.4




More information about the Lede-dev mailing list