Merged revisions 158053 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r158053 | mmichelson | 2008-11-20 11:33:06 -0600 (Thu, 20 Nov 2008) | 12 lines Make sure to set the hangup cause on the calling channel in the case that ast_call() fails. For incoming SIP channels, this was causing us to send a 603 instead of a 486 when the call-limit was reached on the destination channel. (closes issue #13867) Reported by: still_nsk Patches: 13867.diff uploaded by putnopvut (license 60) Tested by: blitzrage ........ git-svn-id: http://svn.digium.com/svn/asterisk/trunk@158066 f38db490-d61c-443f-a65b-d21fe96a405b
This commit is contained in:
parent
d93047742f
commit
056bae58f4
|
@ -1818,6 +1818,9 @@ static int dial_exec_full(struct ast_channel *chan, void *data, struct ast_flags
|
|||
/* Again, keep going even if there's an error */
|
||||
ast_debug(1, "ast call on peer returned %d\n", res);
|
||||
ast_verb(3, "Couldn't call %s\n", numsubst);
|
||||
if (tc->hangupcause) {
|
||||
chan->hangupcause = tc->hangupcause;
|
||||
}
|
||||
ast_hangup(tc);
|
||||
tc = NULL;
|
||||
ast_free(tmp);
|
||||
|
|
|
@ -4870,8 +4870,11 @@ static int sip_call(struct ast_channel *ast, char *dest, int timeout)
|
|||
|
||||
res = update_call_counter(p, INC_CALL_RINGING);
|
||||
|
||||
if (res == -1)
|
||||
if (res == -1) {
|
||||
return res;
|
||||
} else {
|
||||
ast->hangupcause = AST_CAUSE_USER_BUSY;
|
||||
}
|
||||
|
||||
p->callingpres = ast->cid.cid_pres;
|
||||
p->jointcapability = ast_translate_available_formats(p->capability, p->prefcodec);
|
||||
|
|
Reference in New Issue