mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-24 12:23:32 +01:00
Fix a startup time assert caused by periodic events not being initialized.
Loading a on disk bridge descriptor causes a directory download to be scheduled, which asserts due to the periodic events not being initialized yet. Fixes bug #17635, not in any released version of tor.
This commit is contained in:
parent
8af5afedc9
commit
85bb71049a
@ -2299,6 +2299,13 @@ do_main_loop(void)
|
|||||||
{
|
{
|
||||||
time_t now;
|
time_t now;
|
||||||
|
|
||||||
|
/* initialize the periodic events first, so that code that depends on the
|
||||||
|
* events being present does not assert.
|
||||||
|
*/
|
||||||
|
if (! periodic_events_initialized) {
|
||||||
|
initialize_periodic_events();
|
||||||
|
}
|
||||||
|
|
||||||
/* initialize dns resolve map, spawn workers if needed */
|
/* initialize dns resolve map, spawn workers if needed */
|
||||||
if (dns_init() < 0) {
|
if (dns_init() < 0) {
|
||||||
if (get_options()->ServerDNSAllowBrokenConfig)
|
if (get_options()->ServerDNSAllowBrokenConfig)
|
||||||
@ -2401,10 +2408,6 @@ do_main_loop(void)
|
|||||||
tor_assert(second_timer);
|
tor_assert(second_timer);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (! periodic_events_initialized) {
|
|
||||||
initialize_periodic_events();
|
|
||||||
}
|
|
||||||
|
|
||||||
#ifdef HAVE_SYSTEMD_209
|
#ifdef HAVE_SYSTEMD_209
|
||||||
uint64_t watchdog_delay;
|
uint64_t watchdog_delay;
|
||||||
/* set up systemd watchdog notification. */
|
/* set up systemd watchdog notification. */
|
||||||
|
Loading…
Reference in New Issue
Block a user