summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorKevin P. Fleming <kpfleming@digium.com>2006-04-12 23:33:47 +0000
committerKevin P. Fleming <kpfleming@digium.com>2006-04-12 23:33:47 +0000
commit371e0316f01d0bf33ea53e3a8a8421e77de749db (patch)
treeaf8eb7fb67eecb435590aa4b037bec3e0168c937 /include
parenta015d0b36f2d83d13e5e5b95abd2e8f4f87993f3 (diff)
simplify macro usage
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@19614 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'include')
-rw-r--r--include/asterisk/lock.h19
1 files changed, 9 insertions, 10 deletions
diff --git a/include/asterisk/lock.h b/include/asterisk/lock.h
index e86462306..e4276dd7f 100644
--- a/include/asterisk/lock.h
+++ b/include/asterisk/lock.h
@@ -60,17 +60,19 @@
* non-blocking calls.
*/
#ifndef HAVE_MTX_PROFILE
-#define __MTX_PROF /* nothing */
+#define __MTX_PROF(a) return pthread_mutex_lock((a))
#else
-#define __MTX_PROF { \
+#define __MTX_PROF(a) do { \
int i; \
/* profile only non-blocking events */ \
ast_mark(mtx_prof, 1); \
- i = pthread_mutex_trylock(pmutex); \
+ i = pthread_mutex_trylock((a)); \
ast_mark(mtx_prof, 0); \
if (!i) \
return i; \
- }
+ else \
+ return pthread_mutex_lock((a)); \
+ } while (0)
#endif /* HAVE_MTX_PROFILE */
#include <pthread.h>
@@ -610,8 +612,7 @@ static void __attribute__ ((destructor)) fini_##mutex(void) \
static inline int ast_mutex_lock(ast_mutex_t *pmutex)
{
- __MTX_PROF
- return pthread_mutex_lock(pmutex);
+ __MTX_PROF(pmutex);
}
static inline int ast_mutex_trylock(ast_mutex_t *pmutex)
@@ -631,8 +632,7 @@ static inline int ast_mutex_lock(ast_mutex_t *pmutex)
{
if (*pmutex == (ast_mutex_t)AST_MUTEX_KIND)
ast_mutex_init(pmutex);
- __MTX_PROF
- return pthread_mutex_lock(pmutex);
+ __MTX_PROF(pmutex);
}
static inline int ast_mutex_trylock(ast_mutex_t *pmutex)
@@ -648,8 +648,7 @@ static inline int ast_mutex_trylock(ast_mutex_t *pmutex)
static inline int ast_mutex_lock(ast_mutex_t *pmutex)
{
- __MTX_PROF
- return pthread_mutex_lock(pmutex);
+ __MTX_PROF(pmutex);
}
static inline int ast_mutex_trylock(ast_mutex_t *pmutex)