summaryrefslogtreecommitdiff
path: root/event.c
diff options
context:
space:
mode:
authorAzat Khuzhin <a3at.mail@gmail.com>2017-03-24 16:49:59 +0800
committerAzat Khuzhin <a3at.mail@gmail.com>2017-03-26 21:42:19 +0300
commit177e2171cb44e3929fbb0ec43b1bffb325b0e8ed (patch)
treee08309cdfd2abe6716d832adab491bda5f33203b /event.c
parent2e52bace9f9998826bd3819af328efc8d18decf9 (diff)
downloadlibevent-177e2171cb44e3929fbb0ec43b1bffb325b0e8ed.tar.gz
Make event_count macros cleaner
Fixes: #489
Diffstat (limited to 'event.c')
-rw-r--r--event.c10
1 files changed, 3 insertions, 7 deletions
diff --git a/event.c b/event.c
index 89579a6b..918b412d 100644
--- a/event.c
+++ b/event.c
@@ -3150,10 +3150,6 @@ timeout_process(struct event_base *base)
}
}
-#if (EVLIST_INTERNAL >> 4) != 1
-#error "Mismatch for value of EVLIST_INTERNAL"
-#endif
-
#ifndef MAX
#define MAX(a,b) (((a)>(b))?(a):(b))
#endif
@@ -3161,13 +3157,13 @@ timeout_process(struct event_base *base)
#define MAX_EVENT_COUNT(var, v) var = MAX(var, v)
/* These are a fancy way to spell
- if (flags & EVLIST_INTERNAL)
+ if (~flags & EVLIST_INTERNAL)
base->event_count--/++;
*/
#define DECR_EVENT_COUNT(base,flags) \
- ((base)->event_count -= (~((flags) >> 4) & 1))
+ ((base)->event_count -= !((flags) & EVLIST_INTERNAL))
#define INCR_EVENT_COUNT(base,flags) do { \
- ((base)->event_count += (~((flags) >> 4) & 1)); \
+ ((base)->event_count += !((flags) & EVLIST_INTERNAL)); \
MAX_EVENT_COUNT((base)->event_count_max, (base)->event_count); \
} while (0)