Pack the right number of items into the status and receive fax blobs
authorMatthew Jordan <mjordan@digium.com>
Wed, 29 May 2013 03:22:04 +0000 (03:22 +0000)
committerMatthew Jordan <mjordan@digium.com>
Wed, 29 May 2013 03:22:04 +0000 (03:22 +0000)
The code was still attempting to pack an additional item into the blobs
that didn't exist. Crashes ensued. This patch modifies the publishing of
these messages so that the correct number of items are packed in the JSON.

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

res/res_fax.c

index 68cd0f2..4c53a0d 100644 (file)
@@ -1184,7 +1184,7 @@ static int report_fax_status(struct ast_channel *chan, struct ast_fax_session_de
                return -1;
        }
 
-       json_object = ast_json_pack("{s: s, s: s, s: s, s: s, s: s, s: o}",
+       json_object = ast_json_pack("{s: s, s: s, s: s, s: s, s: o}",
                        "type", "status",
                        "operation", (details->caps & AST_FAX_TECH_GATEWAY) ? "gateway" : (details->caps & AST_FAX_TECH_RECEIVE) ? "receive" : "send",
                        "status", status,
@@ -1777,7 +1777,7 @@ static int report_receive_fax_status(struct ast_channel *chan, const char *filen
        {
                SCOPED_CHANNELLOCK(lock, chan);
 
-               json_object = ast_json_pack("s: s, s: s, s: s, s: s, s: s, s: s, s: s, s: o",
+               json_object = ast_json_pack("s: s, s: s, s: s, s: s, s: s, s: s, s: o",
                                "type", "receive"
                                "remote_station_id", S_OR(pbx_builtin_getvar_helper(chan, "REMOTESTATIONID"), ""),
                                "local_station_id", S_OR(pbx_builtin_getvar_helper(chan, "LOCALSTATIONID"), ""),