Upon receiving the first provisional response for a cancelled transaction, only send CANCEL once. Otherwise we keep sending CANCEL requests when we get a provisional response for the cancelled INVITE. Bria got in a weird state and kept sending provisional responses for CANCEL and we got in a tight loop of receiving 3000+ 100 Trying responses for CANCEL and sending 3000+ CANCELs in 25 seconds. This filled the SipUserAgent message queue, blocked the OsTimerTask from queuing timers, then blocked OsNatAgentTask from cancelling timers, and we got in a huge deadlock.
Upon receiving the first provisional response for a cancelled transaction, only send CANCEL once.
Otherwise we keep sending CANCEL requests when we get a provisional response for the cancelled INVITE.
Bria got in a weird state and kept sending provisional responses for CANCEL and we got in a tight
loop of receiving 3000+ 100 Trying responses for CANCEL and sending 3000+ CANCELs in 25 seconds.
This filled the SipUserAgent message queue, blocked the OsTimerTask from queuing timers, then blocked
OsNatAgentTask from cancelling timers, and we got in a huge deadlock.


git-svn-id: f26ccc5efe72c2bd8e1c40f599fe313f2692e4de@12022 a612230a-c5fa-0310-af8b-88eea846685b

sipXtapi/sipXtapi-svn-mirror,sipXtapi/sipXtapi-svn-mirror,sipXtapi/sipXtapi-svn-mirror,sipXtapi/sipXtapi-svn-mirror,sipXtapi/sipXtapi-svn-mirror,sipXtapi/sipXtapi-svn-mirror,sipXtapi/sipXtapi-svn-mirror