浏览代码

Bug 610276 - fix coverity Defect Type: API usage errors issues

https://bugzilla.redhat.com/show_bug.cgi?id=610276
Resolves: bug 610276
Bug Description: fix coverity Defect Type: API usage errors issues
Reviewed by: nhosoi (Thanks!)
Branch: HEAD
Fix Description: Must call va_end after calling va_start.
Platforms tested: RHEL5 x86_64
Flag Day: no
Doc impact: no
Rich Megginson 15 年之前
父节点
当前提交
7a9c069a7d
共有 2 个文件被更改,包括 9 次插入2 次删除
  1. 8 2
      lib/base/util.cpp
  2. 1 0
      lib/libaccess/nseframe.cpp

+ 8 - 2
lib/base/util.cpp

@@ -121,9 +121,12 @@ NSAPI_PUBLIC int util_vsnprintf(char *s, int n, register const char *fmt,
 
 NSAPI_PUBLIC int util_snprintf(char *s, int n, const char *fmt, ...)
 {
+    int rc;
     va_list args;
     va_start(args, fmt);
-    return PR_vsnprintf(s, n, fmt, args);
+    rc = PR_vsnprintf(s, n, fmt, args);
+    va_end(args);
+    return rc;
 }
 
 NSAPI_PUBLIC int util_vsprintf(char *s, register const char *fmt, va_list args)
@@ -133,9 +136,12 @@ NSAPI_PUBLIC int util_vsprintf(char *s, register const char *fmt, va_list args)
 
 NSAPI_PUBLIC int util_sprintf(char *s, const char *fmt, ...)
 {
+    int rc;
     va_list args;
     va_start(args, fmt);
-    return PR_vsnprintf(s, UTIL_PRF_MAXSIZE, fmt, args);
+    rc = PR_vsnprintf(s, UTIL_PRF_MAXSIZE, fmt, args);
+    va_end(args);
+    return rc;
 }
 
 /* --------------------------- util_strcasecmp ---------------------------- */

+ 1 - 0
lib/libaccess/nseframe.cpp

@@ -230,6 +230,7 @@ NSEFrame_t * nserrGenerate(NSErr_t * errp, long retcode, long errorid,
 	    esp = va_arg(ap, char *);
 	    efp->ef_errv[i] = STRDUP(esp);
 	}
+	va_end(ap);
 
 	/* Add the frame to the list (if any) */
 	if (errp) {