From 9d8b9b6ca5a47911c50f61696b2bc9978ab1ff80 Mon Sep 17 00:00:00 2001 From: mkrokosz <mkrokosz@vonage.com> Date: Fri, 28 Oct 2016 14:30:02 -0400 Subject: [PATCH] res_pjsip_outbound_publish: Fix crash when publishing device state. While publishing device state between multiple instances of Asterisk, a crash will sporadically occur under high CPS which looks to be a race condition operating on the publisher queue. ASTERISK-26506 Change-Id: I28da25d346deb358eff1d563485cabc433ce1ed6 --- res/res_pjsip_outbound_publish.c | 1 + 1 file changed, 1 insertion(+) diff --git a/res/res_pjsip_outbound_publish.c b/res/res_pjsip_outbound_publish.c index 0aad5fcdb6..87680480c8 100644 --- a/res/res_pjsip_outbound_publish.c +++ b/res/res_pjsip_outbound_publish.c @@ -786,6 +786,7 @@ static int publisher_client_send(void *obj, void *arg, void *data, int flags) struct sip_outbound_publish_message *message; size_t type_len = 0, subtype_len = 0, body_text_len = 0; int *res = data; + SCOPED_AO2LOCK(lock, publisher); *res = -1; if (!publisher->client) { -- GitLab