Refactor to use safe_timer_diff.

This commit is contained in:
Nick Mathewson 2018-05-01 10:56:11 -04:00
parent a73603653a
commit 4a559e9960

View File

@ -1994,13 +1994,7 @@ dirvote_callback(time_t now, const or_options_t *options)
* fix itself in an hour or so? */ * fix itself in an hour or so? */
return 3600; return 3600;
} }
if (BUG(next <= now)) { return safe_timer_diff(now, next);
/* This case shouldn't be possible, since "next" is computed by
* dirvote_act() based on the value of "now" we give it. */
return 1;
} else {
return next - now;
}
} }
/** Reschedule the directory-authority voting event. Run this whenever the /** Reschedule the directory-authority voting event. Run this whenever the
@ -2046,14 +2040,8 @@ save_state_callback(time_t now, const or_options_t *options)
const time_t next_write = get_or_state()->next_write; const time_t next_write = get_or_state()->next_write;
if (next_write == TIME_MAX) { if (next_write == TIME_MAX) {
return 86400; return 86400;
} else if (BUG(next_write <= now)) {
/* This can't happen due to clock jumps, since the value of next_write
* is based on the same "now" that we passed to or_state_save().
*/
return PERIODIC_EVENT_NO_UPDATE;
} else {
return (int)(next_write - now);
} }
return safe_timer_diff(now, next_write);
} }
/** Reschedule the event for saving the state file. /** Reschedule the event for saving the state file.