Merge pull request #7930

807cbcd easylogging++: fix missing logs (moneromooo-monero)
This commit is contained in:
luigi1111 2021-09-23 22:19:16 -05:00
commit 4f5e8ccace
No known key found for this signature in database
GPG Key ID: F4ACA0183641E010
1 changed files with 4 additions and 3 deletions

View File

@ -2984,8 +2984,8 @@ void Writer::initializeLogger(Logger *logger, bool needLock) {
} }
void Writer::processDispatch() { void Writer::processDispatch() {
static std::atomic_flag in_dispatch; static __thread bool in_dispatch = false;
if (in_dispatch.test_and_set()) if (in_dispatch)
{ {
if (m_proceed && m_logger != NULL) if (m_proceed && m_logger != NULL)
{ {
@ -2994,6 +2994,7 @@ void Writer::processDispatch() {
} }
return; return;
} }
in_dispatch = true;
#if ELPP_LOGGING_ENABLED #if ELPP_LOGGING_ENABLED
if (ELPP->hasFlag(LoggingFlag::MultiLoggerSupport)) { if (ELPP->hasFlag(LoggingFlag::MultiLoggerSupport)) {
bool firstDispatched = false; bool firstDispatched = false;
@ -3032,7 +3033,7 @@ void Writer::processDispatch() {
m_logger->releaseLock(); m_logger->releaseLock();
} }
#endif // ELPP_LOGGING_ENABLED #endif // ELPP_LOGGING_ENABLED
in_dispatch.clear(); in_dispatch = false;
} }
void Writer::triggerDispatch(void) { void Writer::triggerDispatch(void) {