Skip to content

Commit 5437df6

Browse files
committed
simplify calculation of time diff
1 parent a9b26a9 commit 5437df6

1 file changed

Lines changed: 3 additions & 9 deletions

File tree

src/timer.cc

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -293,17 +293,11 @@ int Timer::dur() {
293293

294294
int Timer::CalcTimeDiff(int year, int month) {
295295

296-
int timediff_ = 0;
297-
if (year >= 0) {
298-
timediff_ += (year - si_.y0) * cyclusYear;
299-
}
300-
301-
if (month >= 0) {
302-
timediff_ += (month - si_.m0) * cyclusMonth;
303-
}
296+
int start_time = si_.y0 * cyclusYear + si_.m0 * cyclusMonth;
297+
int time = year * cyclusYear + month * cyclusMonth;
304298

305299
// Casting because ctx_->dt() is uint64_t and so negatives don't play nice
306-
return timediff_ / static_cast<int>(ctx_->dt());
300+
return (time - start_time) / static_cast<int>(ctx_->dt());
307301

308302
}
309303

0 commit comments

Comments
 (0)