提交 98c2a26e 编写于 作者: R Richard Levitte

In case of memory problems, the va_start() wasn't cleaned with a va_end().

Noticed by Thomas Klausner <wiz@danbala.ifoer.tuwien.ac.at>.
上级 965b6dad
...@@ -992,7 +992,7 @@ void ERR_add_error_data(int num, ...) ...@@ -992,7 +992,7 @@ void ERR_add_error_data(int num, ...)
if (p == NULL) if (p == NULL)
{ {
OPENSSL_free(str); OPENSSL_free(str);
return; goto err;
} }
else else
str=p; str=p;
...@@ -1002,5 +1002,6 @@ void ERR_add_error_data(int num, ...) ...@@ -1002,5 +1002,6 @@ void ERR_add_error_data(int num, ...)
} }
ERR_set_error_data(str,ERR_TXT_MALLOCED|ERR_TXT_STRING); ERR_set_error_data(str,ERR_TXT_MALLOCED|ERR_TXT_STRING);
err:
va_end(args); va_end(args);
} }
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册