From e2a50de88fd9d95dab91e663475f66b2e44013f3 Mon Sep 17 00:00:00 2001
From: Joshua Colp <jcolp@digium.com>
Date: Sat, 30 Dec 2006 18:27:13 +0000
Subject: [PATCH] Clarify why we are reading in a frame in the Packet2Packet
 bridge.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@49072 65c4cc65-6c06-0410-ace0-fbb531ad65f3
---
 main/rtp.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/main/rtp.c b/main/rtp.c
index 9237d89636..43a49830ff 100644
--- a/main/rtp.c
+++ b/main/rtp.c
@@ -3070,6 +3070,7 @@ static enum ast_bridge_result bridge_p2p_loop(struct ast_channel *c0, struct ast
 		    (c0->masq || c0->masqr || c1->masq || c1->masqr)) {
 			if (option_debug > 2)
 				ast_log(LOG_DEBUG, "p2p-rtp-bridge: Oooh, something is weird, backing out\n");
+			/* If a masquerade needs to happen we have to try to read in a frame so that it actually happens. Without this we risk being called again and going into a loop */
 			if ((c0->masq || c0->masqr) && (fr = ast_read(c0)))
 				ast_frfree(fr);
 			if ((c1->masq || c1->masqr) && (fr = ast_read(c1)))
-- 
GitLab