summaryrefslogtreecommitdiff
path: root/main/stasis_bridges.c
diff options
context:
space:
mode:
authorMark Michelson <mmichelson@digium.com>2013-08-29 15:43:23 +0000
committerMark Michelson <mmichelson@digium.com>2013-08-29 15:43:23 +0000
commit0bc2a773657fd2d3d8841e2421ca99b486311204 (patch)
treef085737c3b114fea03b337ddbe9c043811a0e929 /main/stasis_bridges.c
parent72cf2779e8a35c1bfc5cc63a7991c8900a712d5c (diff)
Multiple revisions 397921-397922
........ r397921 | mmichelson | 2013-08-29 10:42:10 -0500 (Thu, 29 Aug 2013) | 6 lines Resolve assumptions that bridge snapshots would be non-NULL for transfer stasis events. Attempting to transfer an unbridged call would result in crashes in either CEL code or in the conversion to AMI messages. ........ r397922 | mmichelson | 2013-08-29 10:42:29 -0500 (Thu, 29 Aug 2013) | 3 lines Remove extra debug message. ........ Merged revisions 397921-397922 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@397923 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'main/stasis_bridges.c')
-rw-r--r--main/stasis_bridges.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/main/stasis_bridges.c b/main/stasis_bridges.c
index be1294ad0..0ff9ccaab 100644
--- a/main/stasis_bridges.c
+++ b/main/stasis_bridges.c
@@ -585,11 +585,17 @@ static struct ast_manager_event_blob *blind_transfer_to_ami(struct stasis_messag
}
channel_state = ast_manager_build_channel_state_string_prefix(blob->channel, "Transferer");
- bridge_state = ast_manager_build_bridge_state_string(blob->bridge);
- if (!channel_state || !bridge_state) {
+ if (!channel_state) {
return NULL;
}
+ if (blob->bridge) {
+ bridge_state = ast_manager_build_bridge_state_string(blob->bridge);
+ if (!bridge_state) {
+ return NULL;
+ }
+ }
+
exten = ast_json_string_get(ast_json_object_get(blob->blob, "exten"));
context = ast_json_string_get(ast_json_object_get(blob->blob, "context"));
result = ast_json_integer_get(ast_json_object_get(blob->blob, "result"));
@@ -604,7 +610,7 @@ static struct ast_manager_event_blob *blind_transfer_to_ami(struct stasis_messag
"Extension: %s\r\n",
result_strs[result],
ast_str_buffer(channel_state),
- ast_str_buffer(bridge_state),
+ bridge_state ? ast_str_buffer(bridge_state) : "",
is_external ? "Yes" : "No",
context,
exten);