summaryrefslogtreecommitdiff
path: root/main/manager.c
diff options
context:
space:
mode:
authorRichard Mudgett <rmudgett@digium.com>2015-10-19 15:27:40 -0500
committerRichard Mudgett <rmudgett@digium.com>2015-10-21 16:49:13 -0500
commita04d946eaa36e1a1cc414fc02147379768a96120 (patch)
tree69444246cee7d8872bcbb98eb263c9ba076e5290 /main/manager.c
parent41f9fd56fb5213f358e2e63b6882dd7ee2278831 (diff)
Add missing failure checks to ast_str_set_va() callers.
Change-Id: I0c2cdcd53727bdc6634095c61294807255bd278f
Diffstat (limited to 'main/manager.c')
-rw-r--r--main/manager.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/main/manager.c b/main/manager.c
index 2ea6fae4c..6e9ae0010 100644
--- a/main/manager.c
+++ b/main/manager.c
@@ -2819,6 +2819,7 @@ AST_THREADSTORAGE(userevent_buf);
*/
void astman_append(struct mansession *s, const char *fmt, ...)
{
+ int res;
va_list ap;
struct ast_str *buf;
@@ -2827,8 +2828,11 @@ void astman_append(struct mansession *s, const char *fmt, ...)
}
va_start(ap, fmt);
- ast_str_set_va(&buf, 0, fmt, ap);
+ res = ast_str_set_va(&buf, 0, fmt, ap);
va_end(ap);
+ if (res == AST_DYNSTR_BUILD_FAILED) {
+ return;
+ }
if (s->f != NULL || s->session->f != NULL) {
send_string(s, ast_str_buffer(buf));
@@ -2888,6 +2892,7 @@ void astman_send_error(struct mansession *s, const struct message *m, char *erro
void astman_send_error_va(struct mansession *s, const struct message *m, const char *fmt, ...)
{
+ int res;
va_list ap;
struct ast_str *buf;
char *msg;
@@ -2897,8 +2902,11 @@ void astman_send_error_va(struct mansession *s, const struct message *m, const c
}
va_start(ap, fmt);
- ast_str_set_va(&buf, 0, fmt, ap);
+ res = ast_str_set_va(&buf, 0, fmt, ap);
va_end(ap);
+ if (res == AST_DYNSTR_BUILD_FAILED) {
+ return;
+ }
/* astman_append will use the same underlying buffer, so copy the message out
* before sending the response */