aboutsummaryrefslogtreecommitdiffstats
path: root/channel.c
diff options
context:
space:
mode:
authorfile <file@f38db490-d61c-443f-a65b-d21fe96a405b>2007-06-19 16:21:29 +0000
committerfile <file@f38db490-d61c-443f-a65b-d21fe96a405b>2007-06-19 16:21:29 +0000
commit6c66819b23239562fff61bcdff7488da4d9c7c82 (patch)
tree0c42d3640aa4b18281681135a65628d8ba8f4e9e /channel.c
parentbf60be1410bff9a16bf653fddb861ac491069596 (diff)
Update BRIDGEPEER variable if set to the new channel name when a masquerade happens. (issue #9699 reported by dimas)
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.2@69986 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channel.c')
-rw-r--r--channel.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/channel.c b/channel.c
index 628e0614f..5a3afcf2a 100644
--- a/channel.c
+++ b/channel.c
@@ -3596,6 +3596,12 @@ enum ast_bridge_result ast_channel_bridge(struct ast_channel *c0, struct ast_cha
break;
}
+ /* See if the BRIDGEPEER variable needs to be updated */
+ if (!ast_strlen_zero(pbx_builtin_getvar_helper(c0, "BRIDGEPEER")))
+ pbx_builtin_setvar_helper(c0, "BRIDGEPEER", c1->name);
+ if (!ast_strlen_zero(pbx_builtin_getvar_helper(c1, "BRIDGEPEER")))
+ pbx_builtin_setvar_helper(c1, "BRIDGEPEER", c0->name);
+
if (c0->tech->bridge &&
(config->timelimit == 0) &&
(c0->tech->bridge == c1->tech->bridge) &&