summaryrefslogtreecommitdiff
path: root/channels/chan_unistim.c
diff options
context:
space:
mode:
authorIgor Goncharovskiy <igor.goncharovsky@gmail.com>2013-07-02 10:16:27 +0000
committerIgor Goncharovskiy <igor.goncharovsky@gmail.com>2013-07-02 10:16:27 +0000
commitf7624718f82ea3b6ad3e7a27ff931d0100d6f98d (patch)
tree6bf647afbbfa42a99f704b9524c357261fe0ce6c /channels/chan_unistim.c
parent51c54ddf8d1b159ff43e7c07d60f721fc4ae995d (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/chan_unistim.c')
-rw-r--r--channels/chan_unistim.c10
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;
}
}