aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorfile <file@f38db490-d61c-443f-a65b-d21fe96a405b>2007-10-05 18:55:36 +0000
committerfile <file@f38db490-d61c-443f-a65b-d21fe96a405b>2007-10-05 18:55:36 +0000
commit9004f9b03a93f9c3b93e3ce139805a0093e507d0 (patch)
tree091d085db90918a56df69bd62dbbcb9ef2f2947a
parentf5b7c9fa275967fd8ec23bb5f46feca3f7938cac (diff)
Update the remembered RTP peer information when putting an endpoint on hold or taking it off hold so that the RTP stack does not initiate a needless reinvite.
(closes issue #10868) Reported by: mavince git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@84818 f38db490-d61c-443f-a65b-d21fe96a405b
-rw-r--r--main/rtp.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/main/rtp.c b/main/rtp.c
index 47af8477b..636d59e54 100644
--- a/main/rtp.c
+++ b/main/rtp.c
@@ -2944,6 +2944,11 @@ static enum ast_bridge_result bridge_native_loop(struct ast_channel *c0, struct
else
pr0->set_rtp_peer(c0, p1, vp1, codec1, ast_test_flag(p1, FLAG_NAT_ACTIVE));
}
+ /* Update local address information */
+ ast_rtp_get_peer(p0, &t0);
+ memcpy(&ac0, &t0, sizeof(ac0));
+ ast_rtp_get_peer(p1, &t1);
+ memcpy(&ac1, &t1, sizeof(ac1));
ast_indicate_data(other, fr->subclass, fr->data, fr->datalen);
ast_frfree(fr);
} else {