diff options
author | Liong Sauw Ming <ming@teluu.com> | 2011-10-06 06:49:09 +0000 |
---|---|---|
committer | Liong Sauw Ming <ming@teluu.com> | 2011-10-06 06:49:09 +0000 |
commit | 790e06757b92282d3f6436a46f278f5c2b92139b (patch) | |
tree | 1507a87839993ad83b901b4cef9a130775ff97f6 /pjsip/src/pjsua-lib/pjsua_media.c | |
parent | 56a567ffe9bbe46f17caa83faf943e095254d9d9 (diff) |
Re #1266:
* Make sure that all media transports are already created and completed to fix the assertion when making call using ICE.
* Change the callback pjsua_med_tp_state_cb to return pj_status_t (instead of void)
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@3796 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjsip/src/pjsua-lib/pjsua_media.c')
-rw-r--r-- | pjsip/src/pjsua-lib/pjsua_media.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/pjsip/src/pjsua-lib/pjsua_media.c b/pjsip/src/pjsua-lib/pjsua_media.c index 876f26b6..e7743659 100644 --- a/pjsip/src/pjsua-lib/pjsua_media.c +++ b/pjsip/src/pjsua-lib/pjsua_media.c @@ -1481,7 +1481,9 @@ static pj_status_t media_channel_init_cb(pjsua_call_id call_id, for (mi=0; mi < call->med_cnt; ++mi) { pjsua_call_media *call_med = &call->media[mi]; - if (call_med->med_init_cb) { + if (call_med->med_init_cb || + call_med->tp_st == PJSUA_MED_TP_NULL) + { pj_mutex_unlock(call->med_ch_mutex); return PJ_SUCCESS; } @@ -1697,8 +1699,8 @@ pj_status_t pjsua_media_channel_init(pjsua_call_id call_id, &acc->cfg.rtp_cfg, security_level, sip_err_code, async, - (async? (pjsua_med_tp_state_cb) - &media_channel_init_cb: NULL)); + (async? &media_channel_init_cb: + NULL)); if (status == PJ_EPENDING) { pending_med_tp = PJ_TRUE; } else if (status != PJ_SUCCESS) { |