From 259e833e88ec9d6cca6a017ac16a426a12165688 Mon Sep 17 00:00:00 2001 From: Richard Mudgett Date: Tue, 17 Mar 2015 16:11:36 +0000 Subject: [PATCH] res_pjsip: Add reason comment. ........ Merged revisions 433005 from http://svn.asterisk.org/svn/asterisk/branches/13 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@433006 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- res/res_pjsip.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/res/res_pjsip.c b/res/res_pjsip.c index f063d79635..83133b4894 100644 --- a/res/res_pjsip.c +++ b/res/res_pjsip.c @@ -2981,6 +2981,12 @@ static int sync_task(void *data) std->fail = std->task(std->task_data); + /* + * Once we unlock std->lock after signaling, we cannot access + * std again. The thread waiting within + * ast_sip_push_task_synchronous() is free to continue and + * release its local variable (std). + */ ast_mutex_lock(&std->lock); std->complete = 1; ast_cond_signal(&std->cond);