Mercurial > hg > orthanc-stone
diff Framework/Oracle/WebAssemblyOracle.cpp @ 1468:323bf6040f5d
fix for boost::program_options
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Fri, 12 Jun 2020 16:53:42 +0200 |
parents | 30deba7bc8e2 |
children | 121d01aa328e |
line wrap: on
line diff
--- a/Framework/Oracle/WebAssemblyOracle.cpp Fri Jun 12 13:27:41 2020 +0200 +++ b/Framework/Oracle/WebAssemblyOracle.cpp Fri Jun 12 16:53:42 2020 +0200 @@ -105,8 +105,12 @@ command_(command), expectedContentType_(expectedContentType) { - LOG(TRACE) << "WebAssemblyOracle::FetchContext::FetchContext() | " - << "receiver address = " << std::hex << &receiver; + if (Orthanc::Logging::IsTraceLevelEnabled()) + { + // Calling "receiver.lock()" is expensive, hence the quick check if TRACE is enabled + LOG(TRACE) << "WebAssemblyOracle::FetchContext::FetchContext() | " + << "receiver address = " << std::hex << receiver.lock().get(); + } if (command == NULL) { @@ -131,8 +135,13 @@ void EmitMessage(const IMessage& message) { - LOG(TRACE) << "WebAssemblyOracle::FetchContext::EmitMessage receiver_ = " - << std::hex << &receiver_ << std::dec; + if (Orthanc::Logging::IsTraceLevelEnabled()) + { + // Calling "receiver_.lock()" is expensive, hence the quick check if TRACE is enabled + LOG(TRACE) << "WebAssemblyOracle::FetchContext::EmitMessage receiver_ = " + << std::hex << receiver_.lock().get() << std::dec; + } + oracle_.EmitMessage(receiver_, message); } @@ -731,7 +740,7 @@ IOracleCommand* command) { LOG(TRACE) << "WebAssemblyOracle::Schedule : receiver = " - << std::hex << &receiver; + << std::hex << receiver.get(); std::unique_ptr<IOracleCommand> protection(command);