commit ba9b0319b00692038e5d4aa2eff7cf5d6947e659
parent 24a2352d56d807320c45fcdd8c74435bda4302c2
Author: Nick Mathewson <nickm@torproject.org>
Date: Wed, 29 May 2019 11:25:47 -0400
Shutdown libevent _after_ the subsystems.
This is necessary since shutting down libevent frees some pointer
that the subsystems want to free themselves. A longer term solution
will be to turn the evloop module into a subsystem itself, but for
now it is best to do the minimal fix.
Fixes bug 30629; bugfix on 0.4.1.1-alpha.
Diffstat:
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/app/main/shutdown.c b/src/app/main/shutdown.c
@@ -157,10 +157,11 @@ tor_free_all(int postfork)
if (!postfork) {
release_lockfile();
}
- tor_libevent_free_all();
subsystems_shutdown();
+ tor_libevent_free_all();
+
/* Stuff in util.c and address.c*/
if (!postfork) {
esc_router_info(NULL);