From d222361a29a78a23f7e465c4a4271318fd61386d Mon Sep 17 00:00:00 2001 From: Mark Michelson <mmichelson@digium.com> Date: Fri, 12 Jun 2009 14:55:07 +0000 Subject: [PATCH] Fix a potential crash from trying to access a NULL channel pointer. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@200290 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- apps/app_queue.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/apps/app_queue.c b/apps/app_queue.c index 65b2970520..8fe2cdc98f 100644 --- a/apps/app_queue.c +++ b/apps/app_queue.c @@ -3086,9 +3086,11 @@ static struct callattempt *wait_for_answer(struct queue_ent *qe, struct callatte * ast_strdupa in a loop like this one can cause a stack overflow */ char ochan_name[AST_CHANNEL_NAME]; - ast_channel_lock(o->chan); - ast_copy_string(ochan_name, o->chan->name, sizeof(ochan_name)); - ast_channel_unlock(o->chan); + if (o->chan) { + ast_channel_lock(o->chan); + ast_copy_string(ochan_name, o->chan->name, sizeof(ochan_name)); + ast_channel_unlock(o->chan); + } if (o->stillgoing && (o->chan) && (o->chan->_state == AST_STATE_UP)) { if (!peer) { ast_verb(3, "%s answered %s\n", ochan_name, inchan_name); -- GitLab