Fix segfault in app queue when no cdr exists for the calling channel (bug #5462)

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6824 65c4cc65-6c06-0410-ace0-fbb531ad65f3
1.2-netsec
Mark Spencer 20 years ago
parent a3df4cdda2
commit dbdd193e12

@ -2188,8 +2188,14 @@ static int try_calling(struct queue_ent *qe, const char *options, char *announce
which = peer;
if (monitorfilename)
ast_monitor_start(which, qe->parent->monfmt, monitorfilename, 1 );
else
else if (qe->chan->cdr)
ast_monitor_start(which, qe->parent->monfmt, qe->chan->cdr->uniqueid, 1 );
else {
/* Last ditch effort -- no CDR, make up something */
char tmpid[256];
snprintf(tmpid, sizeof(tmpid), "chan-%x", rand());
ast_monitor_start(which, qe->parent->monfmt, tmpid, 1 );
}
if (qe->parent->monjoin)
ast_monitor_setjoinfiles(which, 1);
}

Loading…
Cancel
Save