From 063a4b84dd610d8e1fa3f2bb3d3baf51db202bbc Mon Sep 17 00:00:00 2001 From: Fredrik Tolf Date: Sun, 6 Feb 2022 18:14:30 +0100 Subject: [PATCH] ratequeue: Handle bucket emptying more correctly. --- src/ratequeue.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/ratequeue.c b/src/ratequeue.c index dc7e198..6d654c9 100644 --- a/src/ratequeue.c +++ b/src/ratequeue.c @@ -316,9 +316,9 @@ static void tickbucket(struct bucket *bk) bk->last = now; ll = bk->level; if((bk->level -= delta * cf.rate) < 0) { - bk->level = 0; if(ll > 0) - bk->etime = now; + bk->etime = now + (bk->level / cf.rate); + bk->level = 0; } while((bk->brim.d > 0) && (bk->level < cf.size)) { if(sendreq(child, bk->brim.b[0].req, bk->brim.b[0].fd)) { -- 2.11.0