]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
aoc: Fix memory management issues.
authorCorey Farrell <git@cfware.com>
Fri, 17 Nov 2017 01:39:20 +0000 (20:39 -0500)
committerCorey Farrell <git@cfware.com>
Fri, 17 Nov 2017 02:34:41 +0000 (21:34 -0500)
aoc_publish_blob failed to check for msg allocation error and never
released msg.

Change-Id: Ib31a9ffb81056a0d496a49d7eec795005a44bcd5

main/aoc.c

index d63fbdf15eed2ef28b28fe117cfa5c7ea4510b89..707dbb00fd42b01a9c6f7d7ed3bacc03847ff008 100644 (file)
@@ -1861,7 +1861,10 @@ static void aoc_publish_blob(struct ast_channel *chan, struct stasis_message_typ
        msg = stasis_message_create(msg_type, aoc_event);
        ao2_ref(aoc_event, -1);
 
-       stasis_publish(ast_manager_get_topic(), msg);
+       if (msg) {
+               stasis_publish(ast_manager_get_topic(), msg);
+               ao2_ref(msg, -1);
+       }
 }
 
 static struct ast_manager_event_blob *aoc_to_ami(struct stasis_message *message,