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
This commit is contained in:
@@ -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
|
||||
|
Reference in New Issue
Block a user