mirror of
https://github.com/asterisk/asterisk.git
synced 2025-09-04 11:58:52 +00:00
fix locking issue on empty callList
(issue ASTERISK-19298) Reported by: Dmitry Melekhov Patches: ASTERISK-18322-2.patch ........ Merged revisions 369146 from http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged revisions 369147 from http://svn.asterisk.org/svn/asterisk/branches/10 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@369148 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -265,14 +265,13 @@ int ooEndCall(OOH323CallData *call)
|
|||||||
|
|
||||||
int ooRemoveCallFromList (OOH323CallData *call)
|
int ooRemoveCallFromList (OOH323CallData *call)
|
||||||
{
|
{
|
||||||
if(!call)
|
if(!call || !gH323ep.callList)
|
||||||
return OO_OK;
|
return OO_OK;
|
||||||
|
|
||||||
ast_mutex_lock(&callListLock);
|
ast_mutex_lock(&callListLock);
|
||||||
|
|
||||||
OOTRACEINFO3("Removing call %lx: %s\n", call, call->callToken);
|
OOTRACEINFO3("Removing call %lx: %s\n", call, call->callToken);
|
||||||
|
|
||||||
if (!gH323ep.callList) return OO_OK;
|
|
||||||
if(call == gH323ep.callList)
|
if(call == gH323ep.callList)
|
||||||
{
|
{
|
||||||
if(!call->next)
|
if(!call->next)
|
||||||
|
@@ -2373,7 +2373,7 @@ int ooH323MakeCall(char *dest, char *callToken, ooCallOptions *opts)
|
|||||||
else
|
else
|
||||||
OO_CLRFLAG(call->flags, OO_M_TUNNELING);
|
OO_CLRFLAG(call->flags, OO_M_TUNNELING);
|
||||||
|
|
||||||
if(opts->disableGk)
|
if(opts->disableGk || gH323ep.gkClient == NULL)
|
||||||
OO_SETFLAG(call->flags, OO_M_DISABLEGK);
|
OO_SETFLAG(call->flags, OO_M_DISABLEGK);
|
||||||
else
|
else
|
||||||
OO_CLRFLAG(call->flags, OO_M_DISABLEGK);
|
OO_CLRFLAG(call->flags, OO_M_DISABLEGK);
|
||||||
|
Reference in New Issue
Block a user