stasis_channels.c: Eliminate another overuse of RAII_VAR().
authorRichard Mudgett <rmudgett@digium.com>
Tue, 1 Apr 2014 22:34:30 +0000 (22:34 +0000)
committerRichard Mudgett <rmudgett@digium.com>
Tue, 1 Apr 2014 22:34:30 +0000 (22:34 +0000)
........

Merged revisions 411636 from http://svn.asterisk.org/svn/asterisk/branches/12

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@411637 65c4cc65-6c06-0410-ace0-fbb531ad65f3

main/stasis_channels.c

index fe65c17..45ec53d 100644 (file)
@@ -366,14 +366,9 @@ void ast_channel_publish_dial(struct ast_channel *caller, struct ast_channel *pe
 static struct stasis_message *create_channel_blob_message(struct ast_channel_snapshot *snapshot,
                struct stasis_message_type *type,
                struct ast_json *blob)
-
 {
-       RAII_VAR(struct stasis_message *, msg, NULL, ao2_cleanup);
-       RAII_VAR(struct ast_channel_blob *, obj, NULL, ao2_cleanup);
-
-       if (blob == NULL) {
-               blob = ast_json_null();
-       }
+       struct stasis_message *msg;
+       struct ast_channel_blob *obj;
 
        obj = ao2_alloc(sizeof(*obj), channel_blob_dtor);
        if (!obj) {
@@ -384,14 +379,13 @@ static struct stasis_message *create_channel_blob_message(struct ast_channel_sna
                obj->snapshot = snapshot;
                ao2_ref(obj->snapshot, +1);
        }
+       if (!blob) {
+               blob = ast_json_null();
+       }
        obj->blob = ast_json_ref(blob);
 
        msg = stasis_message_create(type, obj);
-       if (!msg) {
-               return NULL;
-       }
-
-       ao2_ref(msg, +1);
+       ao2_cleanup(obj);
        return msg;
 }