[asterisk-commits] jpeeler: trunk r281467 - in /trunk: ./ channels/chan_local.c

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Mon Aug 9 18:05:03 CDT 2010


Author: jpeeler
Date: Mon Aug  9 18:04:59 2010
New Revision: 281467

URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=281467
Log:
Merged revisions 281466 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.8

........
  r281466 | jpeeler | 2010-08-09 18:04:02 -0500 (Mon, 09 Aug 2010) | 2 lines
  
  Add some more stuff to copy from 281429.
........

Modified:
    trunk/   (props changed)
    trunk/channels/chan_local.c

Propchange: trunk/
------------------------------------------------------------------------------
Binary property 'branch-1.8-merged' - no diff available.

Modified: trunk/channels/chan_local.c
URL: http://svnview.digium.com/svn/asterisk/trunk/channels/chan_local.c?view=diff&rev=281467&r1=281466&r2=281467
==============================================================================
--- trunk/channels/chan_local.c (original)
+++ trunk/channels/chan_local.c Mon Aug  9 18:04:59 2010
@@ -417,14 +417,29 @@
 						 * thread (which is the to be masqueraded away local channel) before both local
 						 * channels are optimized away.
 						 */
-						if (p->owner->caller.id.name.valid || p->owner->caller.id.number.valid ||
-							p->owner->caller.id.subaddress.valid) {
-
+						if (p->owner->caller.id.name.valid || p->owner->caller.id.number.valid
+							|| p->owner->caller.id.subaddress.valid || p->owner->caller.ani.name.valid
+							|| p->owner->caller.ani.number.valid || p->owner->caller.ani.subaddress.valid) {
 							struct ast_party_caller tmp;
 							tmp = p->owner->caller;
 							p->owner->caller = p->chan->_bridge->caller;
 							p->chan->_bridge->caller = tmp;
 						}
+						if (p->owner->redirecting.from.name.valid || p->owner->redirecting.from.number.valid
+							|| p->owner->redirecting.from.subaddress.valid || p->owner->redirecting.to.name.valid
+							|| p->owner->redirecting.to.number.valid || p->owner->redirecting.to.subaddress.valid) {
+							struct ast_party_redirecting tmp;
+							tmp = p->owner->redirecting;
+							p->owner->redirecting = p->chan->_bridge->redirecting;
+							p->chan->_bridge->redirecting = tmp;
+						}
+						if (p->owner->dialed.number.str || p->owner->dialed.subaddress.valid) {
+							struct ast_party_dialed tmp;
+							tmp = p->owner->dialed;
+							p->owner->dialed = p->chan->_bridge->dialed;
+							p->chan->_bridge->dialed = tmp;
+						}
+
 
 						ast_app_group_update(p->chan, p->owner);
 						ast_channel_masquerade(p->owner, p->chan->_bridge);




More information about the asterisk-commits mailing list