diff options
Diffstat (limited to 'source/cEvent.cpp')
-rw-r--r-- | source/cEvent.cpp | 17 |
1 files changed, 5 insertions, 12 deletions
diff --git a/source/cEvent.cpp b/source/cEvent.cpp index c52a8a226..17d56be91 100644 --- a/source/cEvent.cpp +++ b/source/cEvent.cpp @@ -26,11 +26,7 @@ cEvent::cEvent(void) m_Event = new sem_t;
if (sem_init(m_Event, 0, 0))
{
- LOGWARN("WARNING cEvent: Could not create unnamed semaphore, fallback to named.");
-
- // _X: I'm unconvinced about using sem_unlink() just after a successful sem_open(), it seems wrong - why destroy the object just after creating?
- ASSERT(!"This codepath is really weird, if it is ever used, please check that everything works.");
-
+ // This path is used by MacOS, because it doesn't support unnamed semaphores.
delete m_Event;
m_bIsNamed = true;
@@ -42,13 +38,6 @@ cEvent::cEvent(void) LOGERROR("cEvent: Cannot create event, errno = %i. Aborting server.", errno);
abort();
}
- else
- {
- if( sem_unlink(EventName.c_str()) != 0 )
- {
- LOGWARN("ERROR: Could not unlink cEvent. (%i)", errno);
- }
- }
}
#endif // *nix
}
@@ -64,6 +53,10 @@ cEvent::~cEvent() #else
if (m_bIsNamed)
{
+ if (sem_unlink(EventName.c_str()) != 0)
+ {
+ LOGWARN("ERROR: Could not unlink cEvent. (%i)", errno);
+ }
if (sem_close(m_Event) != 0)
{
LOGERROR("ERROR: Could not close cEvent. (%i)", errno);
|