diff options
author | mmichelson <mmichelson@f38db490-d61c-443f-a65b-d21fe96a405b> | 2010-02-16 23:46:41 +0000 |
---|---|---|
committer | mmichelson <mmichelson@f38db490-d61c-443f-a65b-d21fe96a405b> | 2010-02-16 23:46:41 +0000 |
commit | 162dcc045f9849fcf5596428c793bd85679da80a (patch) | |
tree | f1f07fc7055850c8302d8a2d0281514ffed3d8ef /main | |
parent | 807b2c7085a4118aaffb1149ca4e37a2a07ca2b8 (diff) |
Merged revisions 247076 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk
........
r247076 | mmichelson | 2010-02-16 17:44:33 -0600 (Tue, 16 Feb 2010) | 12 lines
Add va_end calls to __ast_str_helper.
According to the man page for stdarg(3),
"Each invocation of va_copy() must be matched by a
corresponding invocation of va_end() in the same
function."
There were several cases in __ast_str_helper where
va_copy was not matched with a corresponding call
to va_end.
........
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.6.2@247079 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'main')
-rw-r--r-- | main/strings.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/main/strings.c b/main/strings.c index 2e4b749c9..f3e3d34cd 100644 --- a/main/strings.c +++ b/main/strings.c @@ -93,6 +93,7 @@ int __ast_str_helper(struct ast_str **buf, size_t max_len, #endif ) { ast_verbose("failed to extend from %d to %d\n", (int)(*buf)->__AST_STR_LEN, need); + va_end(aq); return AST_DYNSTR_BUILD_FAILED; } (*buf)->__AST_STR_STR[offset] = '\0'; /* Truncate the partial write. */ @@ -101,6 +102,7 @@ int __ast_str_helper(struct ast_str **buf, size_t max_len, va_end(aq); continue; } + va_end(aq); break; } while (1); /* update space used, keep in mind the truncation */ |