]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
Merged revisions 260437 via svnmerge from
authorJeff Peeler <jpeeler@digium.com>
Fri, 30 Apr 2010 22:45:56 +0000 (22:45 +0000)
committerJeff Peeler <jpeeler@digium.com>
Fri, 30 Apr 2010 22:45:56 +0000 (22:45 +0000)
https://origsvn.digium.com/svn/asterisk/trunk

................
  r260437 | jpeeler | 2010-04-30 17:36:49 -0500 (Fri, 30 Apr 2010) | 18 lines

  Merged revisions 260434 via svnmerge from
  https://origsvn.digium.com/svn/asterisk/branches/1.4

  ........
    r260434 | jpeeler | 2010-04-30 17:22:46 -0500 (Fri, 30 Apr 2010) | 11 lines

    Ensure channel state is not incorrectly set in the case of a very early answer.

    The needringing bit was being read in dahdi_read after answering thereby
    setting the state to ringing from up. This clears needringing upon answering
    so that is no longer possible.

    (closes issue #17067)
    Reported by: tzafrir
    Patches:
          needringing.diff uploaded by tzafrir (license 46)
  ........
................

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@260439 65c4cc65-6c06-0410-ace0-fbb531ad65f3

channels/chan_dahdi.c

index af5d8adc79d05d01b68137be1dd2e2e0944c93a3..9f7f5ffa0dd86aa65085ead57cc1d7ea9083aeff 100644 (file)
@@ -5021,6 +5021,7 @@ static struct ast_frame *dahdi_handle_event(struct ast_channel *ast)
                                        p->subs[index].f.frametype = AST_FRAME_CONTROL;
                                        p->subs[index].f.subclass = AST_CONTROL_ANSWER;
                                        /* Make sure it stops ringing */
+                                       p->subs[SUB_REAL].needringing = 0;
                                        dahdi_set_hook(p->subs[index].dfd, DAHDI_OFFHOOK);
                                        ast_debug(1, "channel %d answered\n", p->channel);
                                        if (p->cidspill) {