talloc.c: Update to match current upstream ("likely" macro definitions)

Use the current macro definitions for likely/unlikely from Samba. The
old version lacked parentheses around the non-GCC alternative, but
there are no uses where this would actually make a difference.
This commit is contained in:
Uoti Urpala 2008-12-27 16:46:38 +02:00
parent 64b22229e3
commit a76f59b039
1 changed files with 10 additions and 2 deletions

View File

@ -108,11 +108,19 @@ static size_t rep_strnlen(const char *s, size_t max)
#if (__GNUC__ >= 3)
/* the strange !! is to ensure that __builtin_expect() takes either 0 or 1
as its first argument */
#ifndef likely
#define likely(x) __builtin_expect(!!(x), 1)
#endif
#ifndef unlikely
#define unlikely(x) __builtin_expect(!!(x), 0)
#endif
#else
#define likely(x) x
#define unlikely(x) x
#ifndef likely
#define likely(x) (x)
#endif
#ifndef unlikely
#define unlikely(x) (x)
#endif
#endif
/* this null_context is only used if talloc_enable_leak_report() or