| 518 | } |
| 519 | |
| 520 | void CFutureLogger::Log(const CLogMessage *pMessage) |
| 521 | { |
| 522 | auto pLogger = std::atomic_load_explicit(&m_pLogger, std::memory_order_acquire); |
| 523 | if(pLogger) |
| 524 | { |
| 525 | pLogger->Log(pMessage); |
| 526 | return; |
| 527 | } |
| 528 | const CLockScope LockScope(m_PendingLock); |
| 529 | pLogger = std::atomic_load_explicit(&m_pLogger, std::memory_order_relaxed); |
| 530 | if(pLogger) |
| 531 | { |
| 532 | pLogger->Log(pMessage); |
| 533 | return; |
| 534 | } |
| 535 | m_vPending.push_back(*pMessage); |
| 536 | } |
| 537 | |
| 538 | void CFutureLogger::GlobalFinish() |
| 539 | { |
no test coverage detected