[asterisk-commits] russell: branch russell/issue_13747 r163760 - in /team/russell/issue_13747: m...
SVN commits to the Asterisk project
asterisk-commits at lists.digium.com
Fri Dec 12 16:00:19 CST 2008
Author: russell
Date: Fri Dec 12 16:00:18 2008
New Revision: 163760
URL: http://svn.digium.com/view/asterisk?view=rev&rev=163760
Log:
- Ensure that the peer channel gets indication that the "calling" channel is
still ringing if that is the case. This can happen when you redirect a
channel that is still ringing.
- Copy the OUTGOING flag in do_masq(). This prevents erroneous ast_answer()
on an outgoing channel that has been redirected.
Modified:
team/russell/issue_13747/main/channel.c
team/russell/issue_13747/res/res_features.c
Modified: team/russell/issue_13747/main/channel.c
URL: http://svn.digium.com/view/asterisk/team/russell/issue_13747/main/channel.c?view=diff&rev=163760&r1=163759&r2=163760
==============================================================================
--- team/russell/issue_13747/main/channel.c (original)
+++ team/russell/issue_13747/main/channel.c Fri Dec 12 16:00:18 2008
@@ -3657,7 +3657,7 @@
/* XXX What about blocking, softhangup, blocker, and lock and blockproc? XXX */
/* Application and data remain the same */
/* Clone exception becomes real one, as with fdno */
- ast_copy_flags(original, clone, AST_FLAG_EXCEPTION);
+ ast_copy_flags(original, clone, AST_FLAG_EXCEPTION | AST_FLAG_OUTGOING);
original->fdno = clone->fdno;
/* Schedule context remains the same */
/* Stream stuff stays the same */
Modified: team/russell/issue_13747/res/res_features.c
URL: http://svn.digium.com/view/asterisk/team/russell/issue_13747/res/res_features.c?view=diff&rev=163760&r1=163759&r2=163760
==============================================================================
--- team/russell/issue_13747/res/res_features.c (original)
+++ team/russell/issue_13747/res/res_features.c Fri Dec 12 16:00:18 2008
@@ -1476,6 +1476,10 @@
pbx_builtin_setvar_helper(peer, "BRIDGEPEER", chan->name);
} else if (chan) {
pbx_builtin_setvar_helper(chan, "BLINDTRANSFER", NULL);
+ }
+
+ if (chan->_state == AST_STATE_RINGING && peer->visible_indication != AST_CONTROL_RINGING) {
+ ast_indicate(peer, AST_CONTROL_RINGING);
}
if (monitor_ok) {
More information about the asterisk-commits
mailing list