diff options
-rw-r--r-- | main/stasis.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/main/stasis.c b/main/stasis.c index ad3fce584..63d17dfaf 100644 --- a/main/stasis.c +++ b/main/stasis.c @@ -1242,10 +1242,9 @@ struct ast_multi_object_blob *ast_multi_object_blob_create(struct ast_json *blob void ast_multi_object_blob_add(struct ast_multi_object_blob *multi, enum stasis_user_multi_object_snapshot_type type, void *object) { - if (!multi || !object) { - return; + if (!multi || !object || AST_VECTOR_APPEND(&multi->snapshots[type], object)) { + ao2_cleanup(object); } - AST_VECTOR_APPEND(&multi->snapshots[type],object); } /*! \brief Publish single channel user event (for app_userevent compatibility) */ |