]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
issue #5720
authorKevin P. Fleming <kpfleming@digium.com>
Sat, 12 Nov 2005 01:33:10 +0000 (01:33 +0000)
committerKevin P. Fleming <kpfleming@digium.com>
Sat, 12 Nov 2005 01:33:10 +0000 (01:33 +0000)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@7083 65c4cc65-6c06-0410-ace0-fbb531ad65f3

ChangeLog
apps/app_dial.c

index 2eb970127c5e67329b2c49be2b6b6b382efe4f72..4415a0f36f97c896934d0c33f8ab64b2fe9c38c6 100755 (executable)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,7 @@
 2005-11-11  Kevin P. Fleming  <kpfleming@digium.com>
 
+       * apps/app_dial.c (wait_for_answer): correct flag copying for automon feature (issue #5720)
+
        * channels/chan_iax2.c: correct comment
 
        * apps/app_voicemail.c (close_mailbox): correct previous commit (issue #5663)
index c0e5ba9f665d6827e42bc115116c9b34d938e532..edb94e1551735174ab3749386c3a1431bf40bba8 100755 (executable)
@@ -435,7 +435,11 @@ static struct ast_channel *wait_for_answer(struct ast_channel *in, struct localu
                                        if (option_verbose > 2)
                                                ast_verbose( VERBOSE_PREFIX_3 "%s answered %s\n", o->chan->name, in->name);
                                        peer = o->chan;
-                                       ast_copy_flags(peerflags, o, OPT_CALLEE_TRANSFER|OPT_CALLER_TRANSFER|OPT_CALLEE_HANGUP|OPT_CALLER_HANGUP|DIAL_NOFORWARDHTML);
+                                       ast_copy_flags(peerflags, o,
+                                                      OPT_CALLEE_TRANSFER | OPT_CALLER_TRANSFER |
+                                                      OPT_CALLEE_HANGUP | OPT_CALLER_HANGUP |
+                                                      OPT_CALLEE_MONITOR | OPT_CALLER_MONITOR |
+                                                      DIAL_NOFORWARDHTML);
                                }
                        } else if (o->chan && (o->chan == winner)) {
                                if (!ast_strlen_zero(o->chan->call_forward)) {
@@ -547,7 +551,11 @@ static struct ast_channel *wait_for_answer(struct ast_channel *in, struct localu
                                                                if (option_verbose > 2)
                                                                        ast_verbose( VERBOSE_PREFIX_3 "%s answered %s\n", o->chan->name, in->name);
                                                                peer = o->chan;
-                                                               ast_copy_flags(peerflags, o, OPT_CALLEE_TRANSFER|OPT_CALLER_TRANSFER|OPT_CALLEE_HANGUP|OPT_CALLER_HANGUP|DIAL_NOFORWARDHTML);
+                                                               ast_copy_flags(peerflags, o,
+                                                                              OPT_CALLEE_TRANSFER | OPT_CALLER_TRANSFER |
+                                                                              OPT_CALLEE_HANGUP | OPT_CALLER_HANGUP |
+                                                                              OPT_CALLEE_MONITOR | OPT_CALLER_MONITOR |
+                                                                              DIAL_NOFORWARDHTML);
                                                        }
                                                        /* If call has been answered, then the eventual hangup is likely to be normal hangup */
                                                        in->hangupcause = AST_CAUSE_NORMAL_CLEARING;
@@ -955,9 +963,7 @@ static int dial_exec_full(struct ast_channel *chan, void *data, struct ast_flags
        /* If a channel group has been specified, get it for use when we create peer channels */
        outbound_group = pbx_builtin_getvar_helper(chan, "OUTBOUND_GROUP");
 
-       ast_copy_flags(peerflags, &opts,
-                      OPT_DTMF_EXIT | OPT_GO_ON | OPT_ORIGINAL_CLID |
-                      OPT_CALLEE_HANGUP | OPT_CALLER_HANGUP);
+       ast_copy_flags(peerflags, &opts, OPT_DTMF_EXIT | OPT_GO_ON | OPT_ORIGINAL_CLID);
        cur = args.peers;
        do {
                /* Remember where to start next time */