]> git.ipfire.org Git - thirdparty/knot-resolver.git/commitdiff
predict.generate: fix modular arithmetic
authorVladimír Čunát <vladimir.cunat@nic.cz>
Wed, 26 Jul 2017 10:15:06 +0000 (12:15 +0200)
committerVladimír Čunát <vladimir.cunat@nic.cz>
Wed, 26 Jul 2017 10:15:06 +0000 (12:15 +0200)
The epoch indices are from [1..period].

modules/predict/predict.lua

index da6593791d748884dd1cab5fc7e7ead519ac08ec..153d534c083f9778ef0e93666be928e919d8f33d 100644 (file)
@@ -103,10 +103,9 @@ end
 local function generate(epoch_now)
        if not epoch_now then return 0 end
        local queued = 0
-       local period = predict.period + 1
        for i = 1, predict.period / 2 - 1 do
-               local current = predict.log[(epoch_now - i) % period]
-               local past = predict.log[(epoch_now - 2*i) % period]
+               local current = predict.log[(epoch_now - i - 1) % predict.period + 1]
+               local past = predict.log[(epoch_now - 2*i - 1) % predict.period + 1]
                if current and past then
                        for k, v in pairs(current) do
                                if past[k] ~= nil and not predict.queue[k] then