Revision
15195
Author
anthm
Date
2009-10-22 11:09:46 -0500 (Thu, 22 Oct 2009)

Log Message

FSCORE-418

Modified Paths

Diff

Modified: freeswitch/trunk/src/switch_ivr_bridge.c (15194 => 15195)


--- freeswitch/trunk/src/switch_ivr_bridge.c	2009-10-22 15:02:10 UTC (rev 15194)
+++ freeswitch/trunk/src/switch_ivr_bridge.c	2009-10-22 16:09:46 UTC (rev 15195)
@@ -221,8 +221,12 @@
 	}
 
 	if ((var = switch_channel_get_variable(chan_a, SWITCH_BYPASS_MEDIA_AFTER_BRIDGE_VARIABLE)) && switch_true(var)) {
+		if (switch_stristr("loopback", switch_channel_get_name(chan_a)) || switch_stristr("loopback", switch_channel_get_name(chan_b))) {
+			switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_WARNING, "Cannot bypass media while bridged to a loopback address.\n");
+		} else {
+			switch_channel_set_variable(chan_a, SWITCH_BYPASS_MEDIA_AFTER_BRIDGE_VARIABLE, NULL);
+		}
 		bypass_media_after_bridge = 1;
-		switch_channel_set_variable(chan_a, SWITCH_BYPASS_MEDIA_AFTER_BRIDGE_VARIABLE, NULL);
 	}
 
 	if ((silence_var = switch_channel_get_variable(chan_a, "bridge_generate_comfort_noise"))) {