When queueing frames, it's pointless to queue a frame after a HANGUP frame is queued...

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@3697 65c4cc65-6c06-0410-ace0-fbb531ad65f3
1.0
Mark Spencer 21 years ago
parent 416079db61
commit 1db964ad95

@ -383,6 +383,12 @@ int ast_queue_frame(struct ast_channel *chan, struct ast_frame *fin)
prev = NULL;
cur = chan->pvt->readq;
while(cur) {
if ((cur->frametype == AST_FRAME_CONTROL) && (cur->subclass == AST_CONTROL_HANGUP)) {
/* Don't bother actually queueing anything after a hangup */
ast_frfree(f);
ast_mutex_unlock(&chan->lock);
return 0;
}
prev = cur;
cur = cur->next;
qlen++;

Loading…
Cancel
Save