easylogging++: fix missing logs

This commit is contained in:
moneromooo-monero 2021-09-09 23:47:13 +00:00
parent 665bd8933a
commit f4a745d3b1
No known key found for this signature in database
GPG Key ID: 686F07454D6CEFC3

View File

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