+++ /dev/null
---- a/pjmedia/src/pjmedia/sdp_neg.c
-+++ b/pjmedia/src/pjmedia/sdp_neg.c
-@@ -906,7 +906,7 @@ static pj_status_t process_m_answer( pj_
- * after receiving remote answer.
- */
- static pj_status_t process_answer(pj_pool_t *pool,
-- pjmedia_sdp_session *offer,
-+ pjmedia_sdp_session *local_offer,
- pjmedia_sdp_session *answer,
- pj_bool_t allow_asym,
- pjmedia_sdp_session **p_active)
-@@ -914,10 +914,14 @@ static pj_status_t process_answer(pj_poo
- unsigned omi = 0; /* Offer media index */
- unsigned ami = 0; /* Answer media index */
- pj_bool_t has_active = PJ_FALSE;
-+ pjmedia_sdp_session *offer;
- pj_status_t status;
-
- /* Check arguments. */
-- PJ_ASSERT_RETURN(pool && offer && answer && p_active, PJ_EINVAL);
-+ PJ_ASSERT_RETURN(pool && local_offer && answer && p_active, PJ_EINVAL);
-+
-+ /* Duplicate local offer SDP. */
-+ offer = pjmedia_sdp_session_clone(pool, local_offer);
-
- /* Check that media count match between offer and answer */
- // Ticket #527, different media count is allowed for more interoperability,