Changeset 170


Ignore:
Timestamp:
Feb 9, 2006 2:14:21 PM (18 years ago)
Author:
bennylp
Message:

Fixed ACK receipt not processed by invite session

File:
1 edited

Legend:

Unmodified
Added
Removed
  • pjproject/trunk/pjsip/src/pjsip-ua/sip_inv.c

    r169 r170  
    199199     */ 
    200200    if (method->id == PJSIP_ACK_METHOD && inv && 
    201         inv->state == PJSIP_INV_STATE_CONFIRMED) 
     201        inv->state != PJSIP_INV_STATE_CONFIRMED) 
    202202    { 
    203203        pjsip_event event; 
     204 
     205        /* Terminate INVITE transaction, if it's still present. */ 
     206        if (inv->invite_tsx &&  
     207            inv->invite_tsx->state <= PJSIP_TSX_STATE_COMPLETED) 
     208        { 
     209            pjsip_tsx_terminate(inv->invite_tsx,  
     210                                inv->invite_tsx->status_code); 
     211            inv->invite_tsx = NULL; 
     212        } 
    204213 
    205214        PJSIP_EVENT_INIT_RX_MSG(event, rdata); 
     
    15621571 
    15631572                inv_send_ack(inv, e->body.tsx_state.src.rdata); 
     1573                inv_set_state(inv, PJSIP_INV_STATE_CONFIRMED, e); 
    15641574 
    15651575 
     
    17011711 
    17021712                    inv_send_ack(inv, e->body.tsx_state.src.rdata); 
    1703  
    17041713                    inv_set_state(inv, PJSIP_INV_STATE_CONFIRMED, e); 
    17051714                } 
Note: See TracChangeset for help on using the changeset viewer.