aboutsummaryrefslogtreecommitdiffstats
path: root/channels
diff options
context:
space:
mode:
authormurf <murf@f38db490-d61c-443f-a65b-d21fe96a405b>2007-07-31 15:59:01 +0000
committermurf <murf@f38db490-d61c-443f-a65b-d21fe96a405b>2007-07-31 15:59:01 +0000
commit90284124ca36972d0c3b9636b10a158318321a91 (patch)
treed4fa9b293a7fbd0dacf63532102100f777c7f6bd /channels
parentb3f196516db6ba3ceeb094941cf4151e3f844a6a (diff)
thanks to Russel, for pointing out that the dialoglist_lock/unlock routines also need to be macros if DETECT_DEADLOCKS is set
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@77829 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels')
-rw-r--r--channels/chan_sip.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/channels/chan_sip.c b/channels/chan_sip.c
index 4770c9cee..f2f031e3a 100644
--- a/channels/chan_sip.c
+++ b/channels/chan_sip.c
@@ -1136,6 +1136,7 @@ static struct sip_pvt *dialoglist = NULL;
/*! \brief Protect the SIP dialog list (of sip_pvt's) */
AST_MUTEX_DEFINE_STATIC(dialoglock);
+#ifndef DETECT_DEADLOCKS
/*! \brief hide the way the list is locked/unlocked */
static void dialoglist_lock(void)
{
@@ -1146,6 +1147,12 @@ static void dialoglist_unlock(void)
{
ast_mutex_unlock(&dialoglock);
}
+#else
+/* we don't want to HIDE the information about where the lock was requested if trying to debug
+ * deadlocks! So, just make these macros! */
+#define dialoglist_lock(x) ast_mutex_lock(&dialoglock)
+#define dialoglist_unlock(x) ast_mutex_unlock(&dialoglock)
+#endif
/*!
* when we create or delete references, make sure to use these