From: Kevin P. Fleming Date: Wed, 12 Apr 2006 23:33:47 +0000 (+0000) Subject: simplify macro usage X-Git-Tag: 1.4.0-beta1~1999 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=371e0316f01d0bf33ea53e3a8a8421e77de749db;p=thirdparty%2Fasterisk.git simplify macro usage git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@19614 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/include/asterisk/lock.h b/include/asterisk/lock.h index e864623060..e4276dd7f3 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 @@ -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)