diff --git a/src/basic/ratelimit.c b/src/basic/ratelimit.c index 4e04e04426..2e94eed843 100644 --- a/src/basic/ratelimit.c +++ b/src/basic/ratelimit.c @@ -13,7 +13,7 @@ bool ratelimit_below(RateLimit *r) { assert(r); - if (r->interval <= 0 || r->burst <= 0) + if (!ratelimit_configured(r)) return true; ts = now(CLOCK_MONOTONIC); diff --git a/src/basic/ratelimit.h b/src/basic/ratelimit.h index 79e33b6a62..9d409b04b3 100644 --- a/src/basic/ratelimit.h +++ b/src/basic/ratelimit.h @@ -17,4 +17,8 @@ static inline void ratelimit_reset(RateLimit *rl) { rl->num = rl->begin = 0; } +static inline bool ratelimit_configured(RateLimit *rl) { + return rl->interval > 0 && rl->burst > 0; +} + bool ratelimit_below(RateLimit *r);