aboutsummaryrefslogtreecommitdiffstats
path: root/channels/chan_skinny.c
diff options
context:
space:
mode:
authormvanbaak <mvanbaak@f38db490-d61c-443f-a65b-d21fe96a405b>2008-04-24 22:16:48 +0000
committermvanbaak <mvanbaak@f38db490-d61c-443f-a65b-d21fe96a405b>2008-04-24 22:16:48 +0000
commit94979a8bde5da5087e67261a4ff435aaff6188e4 (patch)
tree2c247ba7f500b9bdc0fa9867d833b6af194d7139 /channels/chan_skinny.c
parente8d5948d534e44d389e8ceab04c6e1b007b8fd6d (diff)
Pass the hangup cause all the way to the calling app/channel.
(closes issue #11328) Reported by: rain Patches: 20071207__pass_cause_in_hangup_control_frame.diff.txt uploaded by Corydon76 (license 14) brought up-to-date to trunk by me git-svn-id: http://svn.digium.com/svn/asterisk/trunk@114637 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels/chan_skinny.c')
-rw-r--r--channels/chan_skinny.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/channels/chan_skinny.c b/channels/chan_skinny.c
index c4458ba04..b60952709 100644
--- a/channels/chan_skinny.c
+++ b/channels/chan_skinny.c
@@ -4513,7 +4513,7 @@ static int handle_onhook_message(struct skinny_req *req, struct skinnysession *s
if ((res = attempt_transfer(p)) < 0) {
if (sub->next && sub->next->owner) {
sub->next->alreadygone = 1;
- ast_queue_hangup(sub->next->owner,1);
+ ast_queue_hangup(sub->next->owner, -1);
}
} else if (res) {
ast_log(LOG_WARNING, "Transfer attempt failed\n");
@@ -4525,7 +4525,7 @@ static int handle_onhook_message(struct skinny_req *req, struct skinnysession *s
/* If there is another active call, skinny_hangup will ring the phone with the other call */
if (sub->owner) {
sub->alreadygone = 1;
- ast_queue_hangup(sub->owner);
+ ast_queue_hangup(sub->owner, -1);
} else {
ast_log(LOG_WARNING, "Skinny(%s@%s-%d) channel already destroyed\n",
l->name, d->name, sub->callid);
@@ -5222,7 +5222,7 @@ static int handle_soft_key_event_message(struct skinny_req *req, struct skinnyse
if ((res = attempt_transfer(p)) < 0) {
if (sub->next && sub->next->owner) {
sub->next->alreadygone = 1;
- ast_queue_hangup(sub->next->owner, 1);
+ ast_queue_hangup(sub->next->owner, -1);
}
} else if (res) {
ast_log(LOG_WARNING, "Transfer attempt failed\n");
@@ -5234,7 +5234,7 @@ static int handle_soft_key_event_message(struct skinny_req *req, struct skinnyse
/* If there is another active call, skinny_hangup will ring the phone with the other call */
if (sub->owner) {
sub->alreadygone = 1;
- ast_queue_hangup(sub->owner);
+ ast_queue_hangup(sub->owner, -1);
} else {
ast_log(LOG_WARNING, "Skinny(%s@%s-%d) channel already destroyed\n",
l->name, d->name, sub->callid);