< Previous by Date | Date Index | Next by Date > |
Thread Index | Next in Thread > |
<%--AID_SENDTO_BEGIN--%>resiprocate-devel<%--AID_SENDTO_END--%>, Hello
When client send two unsubscribes(expires=0) with different Cseq,
it will make my program crash.
Because it will make DUM delete ServerSubscription's Dialog object
twice.
When ServerSubscription receives a unsubscribe ,it will delete itself,
and post a message(DestroyUsage) to delete its Dialog object.
But Dum receives the second unsubscirbe, which call-id is the same as
previous, and Cseq is larger than it.
Dum will create a new ServerSubscription with previous ServerSubscription's
dialog , because of the same dialog ID. (Two ServerSubscription share one Dialog
object!!!)
And then the 2nd ServerSubscription process this unsubscribe message,
it will delete itself, and post a message(DestroyUsage) to delete it's Dialog
object.
Now, there are 2 DestroyUsage messages in DUM's fifo, so DUM will
delete this Dialog object twice!!!
I have no ideas to fix it :(
<%--AID_EDIT_ATTACHMENT_BEGIN--%><%--AID_EDIT_ATTACHMENT_END--%>
<%--AID_FROMNAME_BEGIN--%>Noiile<%--AID_FROMNAME_END--%>, <%--AID_FROMADDRESS_BEGIN--%>noiile@xxxxxxxxxxx<%--AID_FROMADDRESS_END--%>
2005-12-8
|