diff options
author | Richard Mudgett <rmudgett@digium.com> | 2013-05-01 20:00:53 +0000 |
---|---|---|
committer | Richard Mudgett <rmudgett@digium.com> | 2013-05-01 20:00:53 +0000 |
commit | b050778ce85b43ab41827ae7855d722ad4fbc61e (patch) | |
tree | 83a401a28c79c8f10b79079740100c06dbf13d8b | |
parent | 5ab5715646afb4cad8f7d146da48b2502a1840a4 (diff) |
Remove some unnecessary calls to ast_bridged_channel() in chan_iax2.c
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@387182 65c4cc65-6c06-0410-ace0-fbb531ad65f3
-rw-r--r-- | channels/chan_iax2.c | 35 |
1 files changed, 17 insertions, 18 deletions
diff --git a/channels/chan_iax2.c b/channels/chan_iax2.c index 94573908c..a4ea9b579 100644 --- a/channels/chan_iax2.c +++ b/channels/chan_iax2.c @@ -10426,21 +10426,21 @@ static int socket_process_helper(struct iax2_thread *thread) ast_set_flag64(iaxs[fr->callno], IAX_QUELCH); if (ies.musiconhold) { + const char *moh_suggest; + iax2_lock_owner(fr->callno); if (!iaxs[fr->callno] || !iaxs[fr->callno]->owner) { break; } - if (ast_bridged_channel(iaxs[fr->callno]->owner)) { - const char *moh_suggest = iaxs[fr->callno]->mohsuggest; - - /* - * We already hold the owner lock so we do not - * need to check iaxs[fr->callno] after it returns. - */ - iax2_queue_control_data(fr->callno, AST_CONTROL_HOLD, - S_OR(moh_suggest, NULL), - !ast_strlen_zero(moh_suggest) ? strlen(moh_suggest) + 1 : 0); - } + + /* + * We already hold the owner lock so we do not + * need to check iaxs[fr->callno] after it returns. + */ + moh_suggest = iaxs[fr->callno]->mohsuggest; + iax2_queue_control_data(fr->callno, AST_CONTROL_HOLD, + S_OR(moh_suggest, NULL), + !ast_strlen_zero(moh_suggest) ? strlen(moh_suggest) + 1 : 0); ast_channel_unlock(iaxs[fr->callno]->owner); } } @@ -10465,13 +10465,12 @@ static int socket_process_helper(struct iax2_thread *thread) if (!iaxs[fr->callno]->owner) { break; } - if (ast_bridged_channel(iaxs[fr->callno]->owner)) { - /* - * We already hold the owner lock so we do not - * need to check iaxs[fr->callno] after it returns. - */ - iax2_queue_control_data(fr->callno, AST_CONTROL_UNHOLD, NULL, 0); - } + + /* + * We already hold the owner lock so we do not + * need to check iaxs[fr->callno] after it returns. + */ + iax2_queue_control_data(fr->callno, AST_CONTROL_UNHOLD, NULL, 0); ast_channel_unlock(iaxs[fr->callno]->owner); } break; |