commit 525d2700dd8b6c794a69ea0be63864baeff27617 Author: Sebastian Hahn sebastian@torproject.org Date: Fri Apr 29 01:18:32 2011 +0200
Correctly check elapsed time in last hibernation period
Fix bug 3020. --- changes/bug3020 | 7 +++++++ src/or/hibernate.c | 3 ++- 2 files changed, 9 insertions(+), 1 deletions(-)
diff --git a/changes/bug3020 b/changes/bug3020 new file mode 100644 index 0000000..b987161 --- /dev/null +++ b/changes/bug3020 @@ -0,0 +1,7 @@ + o Minor bugfixes: + - When checking whether a hibernation period has fully elapsed, use + the amount of seconds we expect for that period instead of using + the new period that just started. This would cause an issue because + February is a really short month. Bugfix on 0.2.2.17-alpha; + fixes bug 3020. + diff --git a/src/or/hibernate.c b/src/or/hibernate.c index 1878d5d..aebce4c 100644 --- a/src/or/hibernate.c +++ b/src/or/hibernate.c @@ -378,7 +378,8 @@ configure_accounting(time_t now) /* We are in the interval we thought we were in. Do nothing.*/ interval_end_time = start_of_accounting_period_after(interval_start_time); } else { - long duration = length_of_accounting_period_containing(now); + long duration = + length_of_accounting_period_containing(interval_start_time); double delta = ((double)(s_now - interval_start_time)) / duration; if (-0.50 <= delta && delta <= 0.50) { /* The start of the period is now a little later or earlier than we
tor-commits@lists.torproject.org