On 09/03/15 14:40, Alex Balashov wrote:
Daniel,
On 03/09/2015 07:09 AM, Daniel-Constantin Mierla wrote:
On 09/03/15 01:42, Alex Balashov wrote:
Well, I can say this: it seems that dlg_set_property("ka-{src,dst}") must be set after dlg_manage(), or it has no effect.
I checked the code and the flags from the local context that are set before the dialog creation are stored in dialog structure at the moment of creation.
I seem to have overlooked an important detail:
dlg_set_property() was called in a normal SIP worker, then the transaction was t_suspended(), and it was t_continued() in an rtimer thread. I imagine that in such a case all local context from these "lists" that you referred to in the previous response is lost.
That could explain it.
In this case I think it is better to create the dialog before suspending, because the transaction is created at that moment. Cleanup of the dialog will be done if the transaction is not forwarded.
Feel free to add a note in dialog docs for this case.
I will think about and see if it is any easy way to propagate the context in this situation, but doesn't look something trivial to have it done quickly.
Cheers, Daniel