Merged revisions 91737 via svnmerge from

https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r91737 | mmichelson | 2007-12-07 09:39:58 -0600 (Fri, 07 Dec 2007) | 7 lines

Hangups that happen during autoservice were not processed appropriately. This is
because a hangup actually causes a NULL frame to be received, not a hangup frame.
Queueing a hangup if we receive a NULL frame during autoservice corrects this problem

(closes issue #11467, reported  by jmls, patched by me)


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91738 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Mark Michelson 2007-12-07 15:40:59 +00:00
parent 547083e21a
commit 05dd9b7ef0
1 changed files with 4 additions and 1 deletions

View File

@ -81,8 +81,11 @@ static void *autoservice_run(void *ign)
if ((chan = ast_waitfor_n(mons, x, &ms))) {
struct ast_frame *f = ast_read(chan);
if (!f)
if (!f) {
/* NULL means we got a hangup*/
ast_queue_hangup(chan);
continue;
}
/* Do not add a default entry in this switch statement. Each new
* frame type should be addressed directly as to whether it should