summaryrefslogtreecommitdiff
path: root/channels/chan_mgcp.c
diff options
context:
space:
mode:
authorRichard Mudgett <rmudgett@digium.com>2013-05-01 20:01:27 +0000
committerRichard Mudgett <rmudgett@digium.com>2013-05-01 20:01:27 +0000
commit213834ffd404f6d8343ce36ea4d581ea8ae1e06a (patch)
tree2798eb6ad17c6c0714c6ce385e0fb2ae579264be /channels/chan_mgcp.c
parent30cf1a590cef1d3b112336e217ca568d13d83381 (diff)
Remove some unnecessary calls to ast_bridged_channel() in chan_mgcp.c
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@387184 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'channels/chan_mgcp.c')
-rw-r--r--channels/chan_mgcp.c31
1 files changed, 12 insertions, 19 deletions
diff --git a/channels/chan_mgcp.c b/channels/chan_mgcp.c
index 43ffd95a1..e254823bb 100644
--- a/channels/chan_mgcp.c
+++ b/channels/chan_mgcp.c
@@ -3226,11 +3226,10 @@ static int attempt_transfer(struct mgcp_endpoint *p)
together (but then, why would we want to?) */
if (ast_bridged_channel(p->sub->owner)) {
/* The three-way person we're about to transfer to could still be in MOH, so
- stop if now if appropriate */
- if (ast_bridged_channel(p->sub->next->owner))
- ast_queue_control(p->sub->next->owner, AST_CONTROL_UNHOLD);
+ stop it now */
+ ast_queue_control(p->sub->next->owner, AST_CONTROL_UNHOLD);
if (ast_channel_state(p->sub->owner) == AST_STATE_RINGING) {
- ast_indicate(ast_bridged_channel(p->sub->next->owner), AST_CONTROL_RINGING);
+ ast_queue_control(p->sub->next->owner, AST_CONTROL_RINGING);
}
if (ast_channel_masquerade(p->sub->next->owner, ast_bridged_channel(p->sub->owner))) {
ast_log(LOG_WARNING, "Unable to masquerade %s as %s\n",
@@ -3241,7 +3240,7 @@ static int attempt_transfer(struct mgcp_endpoint *p)
unalloc_sub(p->sub->next);
} else if (ast_bridged_channel(p->sub->next->owner)) {
if (ast_channel_state(p->sub->owner) == AST_STATE_RINGING) {
- ast_indicate(ast_bridged_channel(p->sub->next->owner), AST_CONTROL_RINGING);
+ ast_queue_control(p->sub->next->owner, AST_CONTROL_RINGING);
}
ast_queue_control(p->sub->next->owner, AST_CONTROL_UNHOLD);
if (ast_channel_masquerade(p->sub->owner, ast_bridged_channel(p->sub->next->owner))) {
@@ -3277,8 +3276,7 @@ static void handle_hd_hf(struct mgcp_subchannel *sub, char *ev)
if (sub->outgoing) {
/* Answered */
if (sub->owner) {
- if (ast_bridged_channel(sub->owner))
- ast_queue_control(sub->owner, AST_CONTROL_UNHOLD);
+ ast_queue_control(sub->owner, AST_CONTROL_UNHOLD);
sub->cxmode = MGCP_CX_SENDRECV;
if (!sub->rtp) {
start_rtp(sub);
@@ -3334,8 +3332,7 @@ static void handle_hd_hf(struct mgcp_subchannel *sub, char *ev)
ast_log(LOG_WARNING, "On hook, but already have owner on %s@%s\n", p->name, p->parent->name);
ast_log(LOG_WARNING, "If we're onhook why are we here trying to handle a hd or hf?\n");
}
- if (ast_bridged_channel(sub->owner))
- ast_queue_control(sub->owner, AST_CONTROL_UNHOLD);
+ ast_queue_control(sub->owner, AST_CONTROL_UNHOLD);
sub->cxmode = MGCP_CX_SENDRECV;
if (!sub->rtp) {
start_rtp(sub);
@@ -3452,20 +3449,19 @@ static int handle_request(struct mgcp_subchannel *sub, struct mgcp_request *req,
sub->cxmode = MGCP_CX_MUTE;
ast_verb(3, "MGCP Muting %d on %s@%s\n", sub->id, p->name, p->parent->name);
transmit_modify_request(sub);
- if (sub->owner && ast_bridged_channel(sub->owner))
+ if (sub->owner)
ast_queue_control(sub->owner, AST_CONTROL_HOLD);
sub->next->cxmode = MGCP_CX_RECVONLY;
handle_hd_hf(sub->next, ev);
} else if (sub->owner && sub->next->owner) {
/* We've got two active calls lets decide whether or not to conference or just flip flop */
if ((!sub->outgoing) && (!sub->next->outgoing)) {
- /* We made both calls lets conferenct */
+ /* We made both calls lets conference */
ast_verb(3, "MGCP Conferencing %d and %d on %s@%s\n",
sub->id, sub->next->id, p->name, p->parent->name);
sub->cxmode = MGCP_CX_CONF;
sub->next->cxmode = MGCP_CX_CONF;
- if (ast_bridged_channel(sub->next->owner))
- ast_queue_control(sub->next->owner, AST_CONTROL_UNHOLD);
+ ast_queue_control(sub->next->owner, AST_CONTROL_UNHOLD);
transmit_modify_request(sub);
transmit_modify_request(sub->next);
} else {
@@ -3477,11 +3473,9 @@ static int handle_request(struct mgcp_subchannel *sub, struct mgcp_request *req,
sub->cxmode = MGCP_CX_MUTE;
ast_verb(3, "MGCP Muting %d on %s@%s\n", sub->id, p->name, p->parent->name);
transmit_modify_request(sub);
- if (ast_bridged_channel(sub->owner))
- ast_queue_control(sub->owner, AST_CONTROL_HOLD);
- if (ast_bridged_channel(sub->next->owner))
- ast_queue_control(sub->next->owner, AST_CONTROL_HOLD);
+ ast_queue_control(sub->owner, AST_CONTROL_HOLD);
+ ast_queue_control(sub->next->owner, AST_CONTROL_HOLD);
handle_hd_hf(sub->next, ev);
}
@@ -3496,8 +3490,7 @@ static int handle_request(struct mgcp_subchannel *sub, struct mgcp_request *req,
/* XXX - What do we do now? */
return -1;
}
- if (ast_bridged_channel(p->sub->owner))
- ast_queue_control(p->sub->owner, AST_CONTROL_UNHOLD);
+ ast_queue_control(p->sub->owner, AST_CONTROL_UNHOLD);
p->sub->cxmode = MGCP_CX_SENDRECV;
transmit_modify_request(p->sub);
}