event/Loop: make IsInsideOrNull() available in the NDEBUG build

Fixes build breakage by commit 4e5271fcdf7; and this method does make
sense in non-debug builds.
This commit is contained in:
Max Kellermann 2017-02-09 21:21:49 +01:00
parent 29e1b6e465
commit 7372c931b3
2 changed files with 8 additions and 3 deletions

View File

@ -222,8 +222,9 @@ EventLoop::Run()
#ifndef NDEBUG #ifndef NDEBUG
assert(busy); assert(busy);
assert(thread.IsInside()); assert(thread.IsInside());
thread = ThreadId::Null();
#endif #endif
thread = ThreadId::Null();
} }
void void

View File

@ -212,12 +212,16 @@ public:
} }
#endif #endif
#ifndef NDEBUG /**
* Like IsInside(), but also returns true if the thread has
* already ended (or was not started yet). This is useful for
* code which may run during startup or shutdown, when events
* are not yet/anymore handled.
*/
gcc_pure gcc_pure
bool IsInsideOrNull() const { bool IsInsideOrNull() const {
return thread.IsNull() || thread.IsInside(); return thread.IsNull() || thread.IsInside();
} }
#endif
}; };
#endif /* MAIN_NOTIFY_H */ #endif /* MAIN_NOTIFY_H */