Merged revisions 223487 via svnmerge from

https://origsvn.digium.com/svn/asterisk/trunk

................
  r223487 | russell | 2009-10-11 12:25:42 -0500 (Sun, 11 Oct 2009) | 17 lines
  
  Merged revisions 223485-223486 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r223485 | russell | 2009-10-11 12:22:52 -0500 (Sun, 11 Oct 2009) | 6 lines
    
    Don't use data outside of its scope.
    
    The purpose of this code was to have a hangup frame put on the list of deferred
    frames.  However, the code that read the hangup frame was outside of the scope
    of where the hangup frame was declared.
  ........
    r223486 | russell | 2009-10-11 12:25:06 -0500 (Sun, 11 Oct 2009) | 2 lines
    
    Remove some unnecessary code.
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@223489 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Russell Bryant
2009-10-11 17:31:32 +00:00
parent 9f1bf0f9bd
commit 591d496f0e

View File

@@ -72,6 +72,11 @@ static int as_chan_list_state;
static void *autoservice_run(void *ign)
{
struct ast_frame hangup_frame = {
.frametype = AST_FRAME_CONTROL,
.subclass = AST_CONTROL_HANGUP,
};
for (;;) {
struct ast_channel *mons[MAX_AUTOMONS];
struct asent *ents[MAX_AUTOMONS];
@@ -114,18 +119,14 @@ static void *autoservice_run(void *ign)
}
f = ast_read(chan);
if (!f) {
struct ast_frame hangup_frame = { 0, };
/* No frame means the channel has been hung up.
* A hangup frame needs to be queued here as ast_waitfor() may
* never return again for the condition to be detected outside
* of autoservice. So, we'll leave a HANGUP queued up so the
* thread in charge of this channel will know. */
hangup_frame.frametype = AST_FRAME_CONTROL;
hangup_frame.subclass = AST_CONTROL_HANGUP;
defer_frame = &hangup_frame;
} else {