[Asterisk-code-review] app queue: Handle the caller being redirected out of a queue... (asterisk[13])
Richard Mudgett
asteriskteam at digium.com
Thu Mar 9 13:32:57 CST 2017
Richard Mudgett has posted comments on this change. ( https://gerrit.asterisk.org/5149 )
Change subject: app_queue: Handle the caller being redirected out of a queue bridge
......................................................................
Patch Set 1: Code-Review-1
(3 comments)
https://gerrit.asterisk.org/#/c/5149/1//COMMIT_MSG
Commit Message:
Line 14: * Caller is externally redirected elsewhere
Local channel optimization could also cause a channel to leave but not end the call. The channel is swapped with the replacement caller or member channel.
https://gerrit.asterisk.org/#/c/5149/1/apps/app_queue.c
File apps/app_queue.c:
PS1, Line 5921: RAII_VAR(struct ast_channel_snapshot *, caller_snapshot, NULL, ao2_cleanup);
: RAII_VAR(struct ast_channel_snapshot *, member_snapshot, NULL, ao2_cleanup);
These RAII_VAR's are unnecessary. There is only one return point where these variables could be something other than NULL.
Line 5928: if (ast_strlen_zero(queue_data->bridge_uniqueid)) {
Hmm. handle_attended_transfer() and handle_blind_transfer() lock queue_data starting here. They may be protecting from handle_bridge_enter() setting bridge_uniqueid. It is strange that handle_bridge_enter() doesn't hold the lock while setting that string.
Also would need protection from handle_local_optimization_end() changing the caller_uniqueid and member_uniqueid.
--
To view, visit https://gerrit.asterisk.org/5149
To unsubscribe, visit https://gerrit.asterisk.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: Iba160907770de5a6c9efeffc9df5a13e9ea75334
Gerrit-PatchSet: 1
Gerrit-Project: asterisk
Gerrit-Branch: 13
Gerrit-Owner: Sean Bright <sean.bright at gmail.com>
Gerrit-Reviewer: Anonymous Coward #1000019
Gerrit-Reviewer: Richard Mudgett <rmudgett at digium.com>
Gerrit-HasComments: Yes
More information about the asterisk-code-review
mailing list