Ignore:
Timestamp:
Mar 30, 2012 7:10:13 AM (12 years ago)
Author:
bennylp
Message:

Re #1474: Merged all changes from 1.12 - HEAD (from the 1.x branch)

Location:
pjproject/trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • pjproject/trunk

  • pjproject/trunk/pjsip/src/pjsua-lib/pjsua_call.c

    r3996 r3999  
    29302930 
    29312931    pj_log_push_indent(); 
    2932     PJSUA_LOCK(); 
    29332932 
    29342933    call = (pjsua_call*) inv->dlg->mod_data[pjsua_var.mod.id]; 
    29352934 
    29362935    if (!call) { 
    2937         PJSUA_UNLOCK(); 
    29382936        pj_log_pop_indent(); 
    29392937        return; 
     
    30783076    if (inv->state == PJSIP_INV_STATE_DISCONNECTED) { 
    30793077 
    3080         pj_assert(call != NULL); 
    3081  
    3082         if (call) 
    3083             pjsua_media_channel_deinit(call->index); 
     3078        PJSUA_LOCK(); 
     3079         
     3080        pjsua_media_channel_deinit(call->index); 
    30843081 
    30853082        /* Free call */ 
    30863083        call->inv = NULL; 
     3084 
     3085        pj_assert(pjsua_var.call_cnt > 0); 
    30873086        --pjsua_var.call_cnt; 
    30883087 
     
    30903089        reset_call(call->index); 
    30913090 
    3092     } 
    3093  
    3094     PJSUA_UNLOCK(); 
     3091        PJSUA_UNLOCK(); 
     3092    } 
    30953093    pj_log_pop_indent(); 
    30963094} 
     
    32033201 
    32043202    pj_log_push_indent(); 
    3205     PJSUA_LOCK(); 
    32063203 
    32073204    call = (pjsua_call*) inv->dlg->mod_data[pjsua_var.mod.id]; 
     
    32803277 
    32813278on_return: 
    3282     PJSUA_UNLOCK(); 
    32833279    pj_log_pop_indent(); 
    32843280} 
     
    33923388    unsigned i; 
    33933389    pj_status_t status; 
    3394  
    3395     PJSUA_LOCK(); 
    33963390 
    33973391    call = (pjsua_call*) inv->dlg->mod_data[pjsua_var.mod.id]; 
     
    34813475 
    34823476on_return: 
    3483     PJSUA_UNLOCK(); 
    34843477    pj_log_pop_indent(); 
    34853478} 
     
    34963489 
    34973490    pj_log_push_indent(); 
    3498     PJSUA_LOCK(); 
    34993491 
    35003492    call = (pjsua_call*) inv->dlg->mod_data[pjsua_var.mod.id]; 
     
    35213513 
    35223514on_return: 
    3523     PJSUA_UNLOCK(); 
    35243515    pj_log_pop_indent(); 
    35253516} 
     
    39843975 
    39853976    pj_log_push_indent(); 
    3986     PJSUA_LOCK(); 
    39873977 
    39883978    call = (pjsua_call*) inv->dlg->mod_data[pjsua_var.mod.id]; 
     
    39973987         * receive another REFER for this call. 
    39983988         */ 
     3989        goto on_return; 
     3990    } 
     3991 
     3992    /* https://trac.pjsip.org/repos/ticket/1452: 
     3993     *    If a request is retried due to 401/407 challenge, don't process the 
     3994     *    transaction first but wait until we've retried it. 
     3995     */ 
     3996    if (tsx->role == PJSIP_ROLE_UAC && 
     3997        (tsx->status_code==401 || tsx->status_code==407) && 
     3998        tsx->last_tx && tsx->last_tx->auth_retry) 
     3999    { 
    39994000        goto on_return; 
    40004001    } 
     
    41254126 
    41264127on_return: 
    4127  
    4128     PJSUA_UNLOCK(); 
    41294128    pj_log_pop_indent(); 
    41304129} 
     
    41404139 
    41414140    pj_log_push_indent(); 
    4142     PJSUA_LOCK(); 
    41434141 
    41444142    if (pjsua_var.ua_cfg.cb.on_call_redirected) { 
     
    41534151    } 
    41544152 
    4155     PJSUA_UNLOCK(); 
    41564153    pj_log_pop_indent(); 
    41574154 
Note: See TracChangeset for help on using the changeset viewer.