]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
Merged revisions 223487 via svnmerge from
authorRussell Bryant <russell@russellbryant.com>
Sun, 11 Oct 2009 17:31:32 +0000 (17:31 +0000)
committerRussell Bryant <russell@russellbryant.com>
Sun, 11 Oct 2009 17:31:32 +0000 (17:31 +0000)
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

main/autoservice.c

index 7ed2710168597b91bf5b86b160415e67dafdecf7..4e1cd5203358bb2f62af0d7f47e20d858df995c9 100644 (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 {