res_pjsip_session: Fix usage of wrong memory pool when creating local SDP.

........

Merged revisions 423172 from http://svn.asterisk.org/svn/asterisk/branches/12
........

Merged revisions 423173 from http://svn.asterisk.org/svn/asterisk/branches/13


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@423174 65c4cc65-6c06-0410-ace0-fbb531ad65f3
changes/42/42/1
Joshua Colp 11 years ago
parent e977425bc8
commit ceedf44edd

@ -2097,8 +2097,8 @@ static struct pjmedia_sdp_session *create_local_sdp(pjsip_inv_session *inv, stru
local->origin.id = offer->origin.id; local->origin.id = offer->origin.id;
} }
pj_strdup2(inv->pool, &local->origin.user, session->endpoint->media.sdpowner); pj_strdup2(inv->pool_prov, &local->origin.user, session->endpoint->media.sdpowner);
pj_strdup2(inv->pool, &local->name, session->endpoint->media.sdpsession); pj_strdup2(inv->pool_prov, &local->name, session->endpoint->media.sdpsession);
/* Now let the handlers add streams of various types, pjmedia will automatically reorder the media streams for us */ /* Now let the handlers add streams of various types, pjmedia will automatically reorder the media streams for us */
successful = ao2_callback_data(session->media, OBJ_MULTIPLE, add_sdp_streams, local, session); successful = ao2_callback_data(session->media, OBJ_MULTIPLE, add_sdp_streams, local, session);
@ -2118,14 +2118,14 @@ static struct pjmedia_sdp_session *create_local_sdp(pjsip_inv_session *inv, stru
local->origin.addr_type = session->endpoint->media.rtp.ipv6 ? STR_IP6 : STR_IP4; local->origin.addr_type = session->endpoint->media.rtp.ipv6 ? STR_IP6 : STR_IP4;
if (!ast_strlen_zero(session->endpoint->media.address)) { if (!ast_strlen_zero(session->endpoint->media.address)) {
pj_strdup2(inv->pool, &local->origin.addr, session->endpoint->media.address); pj_strdup2(inv->pool_prov, &local->origin.addr, session->endpoint->media.address);
} else { } else {
pj_sockaddr localaddr; pj_sockaddr localaddr;
char our_ip[PJ_INET6_ADDRSTRLEN]; char our_ip[PJ_INET6_ADDRSTRLEN];
pj_gethostip(session->endpoint->media.rtp.ipv6 ? pj_AF_INET6() : pj_AF_INET(), &localaddr); pj_gethostip(session->endpoint->media.rtp.ipv6 ? pj_AF_INET6() : pj_AF_INET(), &localaddr);
pj_sockaddr_print(&localaddr, our_ip, sizeof(our_ip), 0); pj_sockaddr_print(&localaddr, our_ip, sizeof(our_ip), 0);
pj_strdup2(inv->pool, &local->origin.addr, our_ip); pj_strdup2(inv->pool_prov, &local->origin.addr, our_ip);
} }
} }

Loading…
Cancel
Save