aboutsummaryrefslogtreecommitdiff
path: root/src/zencore/thread.cpp
diff options
context:
space:
mode:
authorDan Engelbrecht <[email protected]>2024-04-25 12:57:10 +0200
committerGitHub Enterprise <[email protected]>2024-04-25 12:57:10 +0200
commit3f266e0005bedabaa9f814d13246a91518050e97 (patch)
treebd9efc8202f6ff40c6b17d63f2cea633df039887 /src/zencore/thread.cpp
parentiterate cas chunks (#59) (diff)
downloadzen-3f266e0005bedabaa9f814d13246a91518050e97.tar.xz
zen-3f266e0005bedabaa9f814d13246a91518050e97.zip
zenserverprocess hardening (#61)
* verify running process before creating event * make sure we don't signal/wait for a zenserver instance that we did not wait for to get ready
Diffstat (limited to 'src/zencore/thread.cpp')
-rw-r--r--src/zencore/thread.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/zencore/thread.cpp b/src/zencore/thread.cpp
index cb3aced33..06093d6b0 100644
--- a/src/zencore/thread.cpp
+++ b/src/zencore/thread.cpp
@@ -326,6 +326,7 @@ NamedEvent::NamedEvent(std::string_view EventName)
Packed |= intptr_t(Fd) & 0xffff'ffff;
m_EventHandle = (void*)Packed;
#endif
+ ZEN_ASSERT(m_EventHandle != nullptr);
}
NamedEvent::~NamedEvent()
@@ -365,6 +366,7 @@ NamedEvent::Close()
void
NamedEvent::Set()
{
+ ZEN_ASSERT(m_EventHandle != nullptr);
#if ZEN_PLATFORM_WINDOWS
SetEvent(m_EventHandle);
#elif ZEN_PLATFORM_LINUX || ZEN_PLATFORM_MAC
@@ -376,6 +378,7 @@ NamedEvent::Set()
bool
NamedEvent::Wait(int TimeoutMs)
{
+ ZEN_ASSERT(m_EventHandle != nullptr);
#if ZEN_PLATFORM_WINDOWS
const DWORD Timeout = (TimeoutMs < 0) ? INFINITE : TimeoutMs;