Commit 14b3c0f0 authored by Max Kellermann's avatar Max Kellermann

event/Loop: destruct the Uring::Manager in the destructor before assert()

Fixes assertion failure when the EventLoop gets destructed before Run() was ever called. Fixes https://bugs.debian.org/998310
parent 67aff050
ver 0.23.4 (not yet released)
* fix crash or debug builds if startup fails
ver 0.23.3 (2021/10/31)
* protocol
......
......@@ -52,6 +52,13 @@ EventLoop::EventLoop(
EventLoop::~EventLoop() noexcept
{
#if defined(HAVE_URING) && !defined(NDEBUG)
/* if Run() was never called (maybe because startup failed and
an exception is pending), we need to destruct the
Uring::Manager here or else the assertions below fail */
uring.reset();
#endif
assert(defer.empty());
assert(idle.empty());
#ifdef HAVE_THREADED_EVENT_LOOP
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment