Reset the sentringing indication when redirects occur.
authorMark Michelson <mmichelson@digium.com>
Tue, 14 Jul 2009 16:09:38 +0000 (16:09 +0000)
committerMark Michelson <mmichelson@digium.com>
Tue, 14 Jul 2009 16:09:38 +0000 (16:09 +0000)
If a redirecting control frame is processed or a call forward occurs,
we need to reset the sentringing flag so that we can send another ringing
indication to the phone that may contain a connected line update.

AST-164

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

apps/app_dial.c

index 92d1657..ceb5f5d 100644 (file)
@@ -972,6 +972,7 @@ static struct ast_channel *wait_for_answer(struct ast_channel *in,
                                continue;
                        /* here, o->chan == c == winner */
                        if (!ast_strlen_zero(c->call_forward)) {
+                               (*sentringing) = 0;
                                do_forward(o, &num, peerflags, single, to);
                                continue;
                        }
@@ -1097,6 +1098,7 @@ static struct ast_channel *wait_for_answer(struct ast_channel *in,
                                        } else {
                                                ast_verb(3, "%s redirecting info has changed, passing it to %s\n", c->name, in->name);
                                                ast_indicate_data(in, AST_CONTROL_REDIRECTING, f->data.ptr, f->datalen);
+                                               (*sentringing) = 0;
                                        }
                                        break;
                                case AST_CONTROL_PROCEEDING: