From: Alexandr Anikin Date: Fri, 2 Dec 2011 16:19:19 +0000 (+0000) Subject: process null frame pointer returned by ast_rtp_instance_read correctly X-Git-Tag: 1.8.9.0-rc1~47 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=7e7e263652fc5ce60ae182e016fe3a72c0bca933;p=thirdparty%2Fasterisk.git process null frame pointer returned by ast_rtp_instance_read correctly (closes issue ASTERISK-16697) Reported by: under Patches: segfault.diff (License #5871) patch uploaded by under git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@346762 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/addons/chan_ooh323.c b/addons/chan_ooh323.c index 06b7a672e6..b4456c5703 100644 --- a/addons/chan_ooh323.c +++ b/addons/chan_ooh323.c @@ -4286,7 +4286,7 @@ struct ast_frame *ooh323_rtp_read(struct ast_channel *ast, struct ooh323_pvt *p) f = &null_frame; } - if (p->owner) { + if (f && p->owner) { /* We already hold the channel lock */ if (f->frametype == AST_FRAME_VOICE && !p->faxmode) { if (f->subclass.codec != p->owner->nativeformats) { diff --git a/channels/chan_h323.c b/channels/chan_h323.c index 3f901e068a..ecf3cc1256 100644 --- a/channels/chan_h323.c +++ b/channels/chan_h323.c @@ -764,7 +764,7 @@ static struct ast_frame *oh323_rtp_read(struct oh323_pvt *pvt) if (f && (f->frametype == AST_FRAME_DTMF) && !(pvt->options.dtmfmode & (H323_DTMF_RFC2833 | H323_DTMF_CISCO))) { return &ast_null_frame; } - if (pvt->owner) { + if (f && pvt->owner) { /* We already hold the channel lock */ if (f->frametype == AST_FRAME_VOICE) { if (f->subclass.codec != pvt->owner->nativeformats) {