diff --git a/daemon/call.c b/daemon/call.c index 5bb41a061..d3b66c6d8 100644 --- a/daemon/call.c +++ b/daemon/call.c @@ -999,6 +999,8 @@ static struct endpoint_map *__get_endpoint_map(struct call_media *media, unsigne port_latching = true; else if (MEDIA_ISSET(media, ICE) && (!flags || !flags->no_port_latching)) port_latching = true; + else if (!MEDIA_ISSET(media, RECV) && (!flags || !flags->no_port_latching)) + port_latching = true; struct endpoint_map *em = NULL; if (port_latching) diff --git a/t/auto-daemon-tests.pl b/t/auto-daemon-tests.pl index cff468bb3..d6e6b58f0 100755 --- a/t/auto-daemon-tests.pl +++ b/t/auto-daemon-tests.pl @@ -15997,5 +15997,225 @@ SDP +new_call; + +($port_a) = offer('re-invite sendonly port change (control)', { }, <