diff --git a/res/res_pjsip_session.c b/res/res_pjsip_session.c
index 83be0cd2b6d2907d68969371f87c1bfa11e4bd76..52af36822c56800197010e86f57ab7bf577c8f2b 100644
--- a/res/res_pjsip_session.c
+++ b/res/res_pjsip_session.c
@@ -2097,8 +2097,8 @@ static struct pjmedia_sdp_session *create_local_sdp(pjsip_inv_session *inv, stru
 		local->origin.id = offer->origin.id;
 	}
 
-	pj_strdup2(inv->pool, &local->origin.user, session->endpoint->media.sdpowner);
-	pj_strdup2(inv->pool, &local->name, session->endpoint->media.sdpsession);
+	pj_strdup2(inv->pool_prov, &local->origin.user, session->endpoint->media.sdpowner);
+	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 */
 	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;
 
 		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 {
 			pj_sockaddr localaddr;
 			char our_ip[PJ_INET6_ADDRSTRLEN];
 
 			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_strdup2(inv->pool, &local->origin.addr, our_ip);
+			pj_strdup2(inv->pool_prov, &local->origin.addr, our_ip);
 		}
 	}