Bogus "return" in update_consensus_networkstatus_downloads()
In update_consensus_networkstatus_downloads(), we consider, flavor-by-flavor, which networkstatus documents if any to download. If we decide not to download one, we should use "continue" to consider the next. Instead, in one place, we use return:
if (time_to_download_next_consensus[i] > now)
return; /* Wait until the current consensus is older. */
This can prevent a directory cache from fetching microdescriptor consensuses in a sufficiently timely way.