mark_my_descriptor_dirty();
/* We may need to reschedule some directory stuff if our status changed. */
- if (authdir_mode_v3(options) && !authdir_mode_v3(old_options))
- dirvote_recalculate_timing(options, time(NULL));
- if (!bool_eq(dirserver_mode(options), dirserver_mode(old_options))) {
- /* Make sure update_router_have_min_dir_info gets called. */
- router_dir_info_changed();
- /* We might need to download a new consensus status later or sooner than
- * we had expected. */
- update_consensus_networkstatus_fetch_time(time(NULL));
+ if (old_options) {
+ if (authdir_mode_v3(options) && !authdir_mode_v3(old_options))
+ dirvote_recalculate_timing(options, time(NULL));
+ if (!bool_eq(dirserver_mode(options), dirserver_mode(old_options))) {
+ /* Make sure update_router_have_min_dir_info gets called. */
+ router_dir_info_changed();
+ /* We might need to download a new consensus status later or sooner than
+ * we had expected. */
+ update_consensus_networkstatus_fetch_time(time(NULL));
+ }
}
return 0;