]> git.ipfire.org Git - thirdparty/asterisk.git/commit
res_pjsip_refer: Move the progress dlg release to a serializer
authorGeorge Joseph <gjoseph@digium.com>
Tue, 2 Mar 2021 18:55:38 +0000 (11:55 -0700)
committerGeorge Joseph <gjoseph@digium.com>
Fri, 5 Mar 2021 14:18:43 +0000 (08:18 -0600)
commit90a456e6d2d51c5a4799e00f0cc2fd59d3274b17
tree3f77543fb8c0e52e79cd627f349babf07778e7be
parent13b1ee8aa5aaa8de6f8e1ce250a937f2ee1ba5e8
res_pjsip_refer: Move the progress dlg release to a serializer

Although the dlg session count was incremented in a pjsip servant
thread, there's no guarantee that the last thread to unref this
progress object was one.  Before we decrement, we need to make
sure that this is either a servant thread or that we push the
decrement to a serializer that is one.

Because pjsip_dlg_dec_session requires the dialog lock, we don't
want to wait on the task to complete if we had to push it to a
serializer.

Change-Id: I8ff2d5d94be3ff04298394070434e22a7d3cbc41
res/res_pjsip_refer.c