diff options
author | Igor Goncharovskiy <igor.goncharovsky@gmail.com> | 2013-07-02 10:16:27 +0000 |
---|---|---|
committer | Igor Goncharovskiy <igor.goncharovsky@gmail.com> | 2013-07-02 10:16:27 +0000 |
commit | f7624718f82ea3b6ad3e7a27ff931d0100d6f98d (patch) | |
tree | 6bf647afbbfa42a99f704b9524c357261fe0ce6c /channels | |
parent | 51c54ddf8d1b159ff43e7c07d60f721fc4ae995d (diff) |
Fix issue with inability to cancell call transfer made by on-sceen menus.
Reported by: Igor Olhovskiy
........
Merged revisions 393395 from http://svn.asterisk.org/svn/asterisk/branches/11
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@393396 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'channels')
-rw-r--r-- | channels/chan_unistim.c | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/channels/chan_unistim.c b/channels/chan_unistim.c index 6e3b47afa..5a5674daa 100644 --- a/channels/chan_unistim.c +++ b/channels/chan_unistim.c @@ -3292,12 +3292,11 @@ static void key_call(struct unistimsession *pte, char keycode) } break; case KEY_FUNC2: + if (ast_channel_state(sub->owner) == AST_STATE_RING) { + transfer_cancel_step2(pte); + } if (ast_channel_state(sub->owner) == AST_STATE_UP) { - if (get_sub(pte->device, SUB_THREEWAY)) { - transfer_cancel_step2(pte); - } else { - transfer_call_step1(pte); - } + transfer_call_step1(pte); } break; case KEY_HANGUP: @@ -4815,7 +4814,6 @@ static int unistim_hangup(struct ast_channel *ast) continue; } if (d->ssub[i] != NULL) { /* Found other subchannel active other then hangup'ed one */ - ast_log(LOG_WARNING, "There is not only one call here %p %p %i\n",d->ssub[i], sub, i); end_call = 0; } } |