diff --git a/src/torcontrol.cpp b/src/torcontrol.cpp --- a/src/torcontrol.cpp +++ b/src/torcontrol.cpp @@ -887,7 +887,10 @@ void InterruptTorControl() { if (gBase) { LogPrintf("tor: Thread interrupt\n"); - event_base_loopbreak(gBase); + event_base_once( + gBase, -1, EV_TIMEOUT, + [](evutil_socket_t, short, void *) { event_base_loopbreak(gBase); }, + nullptr, nullptr); } }