From 966f29c207a2e61c3ef7a2ee0e88002525d6438b Mon Sep 17 00:00:00 2001 From: Joachim Nilsson Date: Mon, 13 Nov 2017 16:33:31 +0100 Subject: [PATCH] Refactor, multiple if() statements into a switch() Signed-off-by: Joachim Nilsson --- src/uev.c | 24 +++++++++++------------- 1 file changed, 11 insertions(+), 13 deletions(-) diff --git a/src/uev.c b/src/uev.c index 1570a06..3973f85 100644 --- a/src/uev.c +++ b/src/uev.c @@ -322,7 +322,10 @@ int uev_run(uev_ctx_t *ctx, int flags) } for (i = 0; ctx->running && i < nfds; i++) { - uint32_t events: + uint64_t exp; + uint32_t events; + struct signalfd_siginfo fdsi; + ssize_t sz = sizeof(fdsi); w = (uev_t *)ee[i].data.ptr; events = ee[i].events; @@ -360,9 +363,8 @@ int uev_run(uev_ctx_t *ctx, int flags) } } - if (UEV_CRON_TYPE == w->type) { - uint64_t exp; - + switch (w->type) { + case UEV_CRON_TYPE: if (read(w->fd, &exp, sizeof(exp)) != sizeof(exp)) { events = UEV_HUP; if (errno != ECANCELED) { @@ -375,11 +377,9 @@ int uev_run(uev_ctx_t *ctx, int flags) w->u.c.when = 0; else w->u.c.when += w->u.c.interval; - } - - if (UEV_TIMER_TYPE == w->type) { - uint64_t exp; + break; + case UEV_TIMER_TYPE: if (read(w->fd, &exp, sizeof(exp)) != sizeof(exp)) { uev_timer_stop(w); events = UEV_ERROR; @@ -387,18 +387,16 @@ int uev_run(uev_ctx_t *ctx, int flags) if (!w->u.t.period) w->u.t.timeout = 0; - } - - if (UEV_SIGNAL_TYPE == w->type) { - struct signalfd_siginfo fdsi; - ssize_t sz = sizeof(fdsi); + break; + case UEV_SIGNAL_TYPE: if (read(w->fd, &fdsi, sz) != sz) { if (uev_signal_start(w)) { uev_signal_stop(w); events = UEV_ERROR; } } + break; } if (w->cb)