From: Russell Bryant Date: Fri, 17 Aug 2007 21:01:43 +0000 (+0000) Subject: Avoid a crash in the handling of DTMF based Caller ID. It is valid for X-Git-Tag: 1.4.12.1~230 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=467ceebc82dba01b7cbd13ee483580be949758be;p=thirdparty%2Fasterisk.git Avoid a crash in the handling of DTMF based Caller ID. It is valid for ast_read to return NULL in the case that the channel has been hung up. (crash reported by anonymouz666 on IRC in #asterisk-dev) git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@79912 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/channels/chan_zap.c b/channels/chan_zap.c index d20596dbd7..6c09670819 100644 --- a/channels/chan_zap.c +++ b/channels/chan_zap.c @@ -6111,6 +6111,8 @@ static void *ss_thread(void *data) return NULL; } f = ast_read(chan); + if (!f) + break; if (f->frametype == AST_FRAME_DTMF) { dtmfbuf[i++] = f->subclass; ast_log(LOG_DEBUG, "CID got digit '%c'\n", f->subclass);