Changeset 4517


Ignore:
Timestamp:
May 10, 2013 7:41:26 AM (7 years ago)
Author:
ming
Message:

Fixed #1666: Handle case when call unhold failed

File:
1 edited

Legend:

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

    r4509 r4517  
    45564556                      call->index, tsx->status_code)); 
    45574557        } 
     4558    } else if (tsx->role == PJSIP_ROLE_UAC && 
     4559               (call->opt.flag & PJSUA_CALL_UNHOLD) && 
     4560               tsx->state >= PJSIP_TSX_STATE_COMPLETED) 
     4561    { 
     4562        /* Monitor the status of call unhold request */ 
     4563        if (tsx->status_code/100 != 2 && 
     4564            (tsx->status_code!=401 && tsx->status_code!=407)) 
     4565        { 
     4566            /* Call unhold failed */ 
     4567            call->opt.flag &= ~PJSUA_CALL_UNHOLD; 
     4568            call->local_hold = PJ_TRUE; 
     4569            PJ_LOG(3,(THIS_FILE, "Error releasing hold on call %d (reason=%d)", 
     4570                      call->index, tsx->status_code)); 
     4571        } 
    45584572    } else if (tsx->role==PJSIP_ROLE_UAS && 
    45594573        tsx->state==PJSIP_TSX_STATE_TRYING && 
Note: See TracChangeset for help on using the changeset viewer.