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/pjnath/src/pjnath/ice_session.c

    r3753 r3999  
    28552855    pj_ice_sess_comp *comp; 
    28562856    pj_ice_sess_cand *cand; 
     2857    pj_uint8_t transport_id; 
     2858    pj_sockaddr addr; 
    28572859 
    28582860    PJ_ASSERT_RETURN(ice && comp_id, PJ_EINVAL); 
     
    28702872    if (comp == NULL) { 
    28712873        status = PJNATH_EICEINCOMPID; 
     2874        pj_mutex_unlock(ice->mutex); 
    28722875        goto on_return; 
    28732876    } 
     
    28752878    if (comp->valid_check == NULL) { 
    28762879        status = PJNATH_EICEINPROGRESS; 
     2880        pj_mutex_unlock(ice->mutex); 
    28772881        goto on_return; 
    28782882    } 
    28792883 
    28802884    cand = comp->valid_check->lcand; 
    2881     status = (*ice->cb.on_tx_pkt)(ice, comp_id, cand->transport_id,  
     2885    transport_id = cand->transport_id; 
     2886    pj_sockaddr_cp(&addr, &comp->valid_check->rcand->addr); 
     2887 
     2888    /* Release the mutex now to avoid deadlock (see ticket #1451). */ 
     2889    pj_mutex_unlock(ice->mutex); 
     2890 
     2891    status = (*ice->cb.on_tx_pkt)(ice, comp_id, transport_id,  
    28822892                                  data, data_len,  
    2883                                   &comp->valid_check->rcand->addr,  
     2893                                  &addr,  
    28842894                                  sizeof(pj_sockaddr_in)); 
    28852895 
    28862896on_return: 
    2887     pj_mutex_unlock(ice->mutex); 
    28882897    return status; 
    28892898} 
Note: See TracChangeset for help on using the changeset viewer.