summaryrefslogtreecommitdiff
path: root/res
diff options
context:
space:
mode:
authorJenkins2 <jenkins2@gerrit.asterisk.org>2017-11-07 16:10:11 -0600
committerGerrit Code Review <gerrit2@gerrit.digium.api>2017-11-07 16:10:11 -0600
commit759f4c11254ac7fb29776966e0a2e27fc9ca78b6 (patch)
treee8abcf3b066ce06044f1bad26627960143cefd42 /res
parentbd67e63434ce2955cacfd19f4391355e046d6aa1 (diff)
parent5247ba4b88825868e0df1de1a863db943cca3601 (diff)
Merge "res_ari_events: Fix use after free / double-free of JSON message."
Diffstat (limited to 'res')
-rw-r--r--res/ari/resource_events.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/res/ari/resource_events.c b/res/ari/resource_events.c
index 4be5d0223..992c562a7 100644
--- a/res/ari/resource_events.c
+++ b/res/ari/resource_events.c
@@ -108,7 +108,9 @@ static void stasis_app_message_handler(
msg_application);
} else if (!session->ws_session) {
/* If the websocket is NULL, the message goes to the queue */
- AST_VECTOR_APPEND(&session->message_queue, message);
+ if (!AST_VECTOR_APPEND(&session->message_queue, message)) {
+ ast_json_ref(message);
+ }
ast_log(LOG_WARNING,
"Queued '%s' message for Stasis app '%s'; websocket is not ready\n",
msg_type,