From 7b353a26ae62bb88e852c1fccbdee10f649e6d14 Mon Sep 17 00:00:00 2001 From: Richard Mudgett Date: Wed, 23 Feb 2011 23:38:04 +0000 Subject: [PATCH] sig_pri_new_ast_channel() should return NULL when new_ast_channel() fails. (closes issue #18874) Reported by: cmaj Patches: patch-sig_pri-crash-possible-null-channel-pointer.diff.txt uploaded by cmaj (license 830) JIRA SWP-3172 git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@308622 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- channels/sig_pri.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/channels/sig_pri.c b/channels/sig_pri.c index fadf111e11..549a11d897 100644 --- a/channels/sig_pri.c +++ b/channels/sig_pri.c @@ -865,10 +865,14 @@ static struct ast_channel *sig_pri_new_ast_channel(struct sig_pri_chan *p, int s { struct ast_channel *c; - if (p->calls->new_ast_channel) + if (p->calls->new_ast_channel) { c = p->calls->new_ast_channel(p->chan_pvt, state, ulaw, exten, requestor); - else + } else { return NULL; + } + if (!c) { + return NULL; + } if (!p->owner) p->owner = c;