Yes, it is a problem in the SipTransactionList it happens because INVITE has not
branch id. So when calling sipxCallDestroy, CANCEL message is created and
findTransactionFor gets called, but it cannot find what are we canceling,
because CANCEL has branc id and INVITE hasn't.
I've made a dirty fix for it: in SipTransactionList::findTransactionFor I've 
changed
if(relationship == SipTransaction::MESSAGE_REQUEST ||
....
){
break;
}

to 

if(relationship == SipTransaction::MESSAGE_REQUEST ||
....
){
break;
}else if(relationship == SipTransaction::MESSAGE_DIFFERENT_BRANCH){
        relationship = SipTransaction::MESSAGE_NEW_FINAL;//kwint
        break;
}

Check if it will help to solve the problem...
Kwint

_______________________________________________
sipxtapi-dev mailing list
[email protected]
List Archive: http://list.sipfoundry.org/archive/sipxtapi-dev/

Reply via email to