aboutsummaryrefslogtreecommitdiffstats
path: root/channels/chan_sip.c
diff options
context:
space:
mode:
authormnicholson <mnicholson@f38db490-d61c-443f-a65b-d21fe96a405b>2010-09-30 19:54:59 +0000
committermnicholson <mnicholson@f38db490-d61c-443f-a65b-d21fe96a405b>2010-09-30 19:54:59 +0000
commit6016cd9a0586ecafa2b968f6fa2a55d98e95bdb0 (patch)
tree19ad97d7c5449520b6f55109244f8f3cab57bdea /channels/chan_sip.c
parentb6d452073b6109ab1b1ca8bcdd57bca577e3e902 (diff)
Merged revisions 289554 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8 ................ r289554 | mnicholson | 2010-09-30 14:53:10 -0500 (Thu, 30 Sep 2010) | 11 lines Merged revisions 289553 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.6.2 ........ r289553 | mnicholson | 2010-09-30 14:51:27 -0500 (Thu, 30 Sep 2010) | 4 lines Properly handle channel allocation failures duing invites with replaces. ABE-2588 ........ ................ git-svn-id: http://svn.digium.com/svn/asterisk/trunk@289555 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels/chan_sip.c')
-rw-r--r--channels/chan_sip.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/channels/chan_sip.c b/channels/chan_sip.c
index 650a01df7..38f9b3342 100644
--- a/channels/chan_sip.c
+++ b/channels/chan_sip.c
@@ -21396,7 +21396,8 @@ static int handle_request_invite(struct sip_pvt *p, struct sip_request *req, int
/* Initialize our tag */
make_our_tag(p->tag, sizeof(p->tag));
- /* First invitation - create the channel */
+ /* First invitation - create the channel. Allocation
+ * failures are handled below. */
c = sip_new(p, AST_STATE_DOWN, S_OR(p->peername, NULL), NULL);
if (cc_recall_core_id != -1) {
ast_setup_cc_recall_datastore(c, cc_recall_core_id);
@@ -21573,7 +21574,7 @@ static int handle_request_invite(struct sip_pvt *p, struct sip_request *req, int
if (!req->ignore && p)
p->lastinvite = seqno;
- if (replace_id) { /* Attended transfer or call pickup - we're the target */
+ if (c && replace_id) { /* Attended transfer or call pickup - we're the target */
if (!ast_strlen_zero(pickup.exten)) {
append_history(p, "Xfer", "INVITE/Replace received");