From: Mark Spencer Date: Sat, 17 May 2003 14:47:17 +0000 (+0000) Subject: Always lock call in find_call X-Git-Tag: 0.5.0~459 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=bbdb142d2e688f0e9f885a6fdaa58ec7c0fac2da;p=thirdparty%2Fasterisk.git Always lock call in find_call git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@1037 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/channels/chan_sip.c b/channels/chan_sip.c index ec18409aad..df04adb396 100755 --- a/channels/chan_sip.c +++ b/channels/chan_sip.c @@ -1359,7 +1359,10 @@ static struct sip_pvt *find_call(struct sip_request *req, struct sockaddr_in *si p = p->next; } ast_pthread_mutex_unlock(&iflock); - return sip_alloc(callid, sin, 1); + p = sip_alloc(callid, sin, 1); + if (p) + ast_pthread_mutex_lock(&p->lock); + return p; } static int sip_register(char *value, int lineno)