From: Richard Mudgett Date: Tue, 17 Mar 2015 16:11:36 +0000 (+0000) Subject: res_pjsip: Add reason comment. X-Git-Tag: 14.0.0-beta1~1180 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=259e833e88ec9d6cca6a017ac16a426a12165688;p=thirdparty%2Fasterisk.git 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 --- 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);