浏览代码

- va_end() on error
- ret==-1 changed into ret < 0

Andrei Pelinescu-Onciul 21 年之前
父节点
当前提交
e8d77b2a69
共有 1 个文件被更改,包括 2 次插入1 次删除
  1. 2 1
      unixsock_server.c

+ 2 - 1
unixsock_server.c

@@ -970,8 +970,9 @@ int unixsock_reply_printf(char* fmt, ...)
 
 	va_start(ap, fmt);
 	ret = vsnprintf(reply_pos.s, reply_pos.len, fmt, ap);
-	if ((ret == -1) || (ret >= reply_pos.len)) {
+	if ((ret < 0) || (ret >= reply_pos.len)) {
 		LOG(L_ERR, "unixsock_reply_printf: Buffer too small\n");
+		va_end(ap);
 		return -1;
 	}