{
static time_t last_changed = 0;
uint64_t prev, cur;
- if (!router_get_my_routerinfo())
+ const routerinfo_t *my_ri = router_get_my_routerinfo();
+ if (!my_ri) /* make sure routerinfo exists */
return;
- prev = router_get_my_routerinfo()->bandwidthcapacity;
+ prev = my_ri->bandwidthcapacity;
++
+ /* Consider ourselves to have zero bandwidth if we're hibernating or
+ * shutting down. */
cur = we_are_hibernating() ? 0 : rep_hist_bandwidth_assess();
if ((prev != cur && (!prev || !cur)) ||
cur > prev*2 ||
fake_node.ri = (routerinfo_t *)ri;
return node_get_all_orports(&fake_node);
}
--