Replace boost::call_once with std::call_once

This commit is contained in:
donaloconnor 2018-03-21 20:02:45 +00:00
parent 2405ce1df0
commit 57dae3fc4a
1 changed files with 8 additions and 8 deletions

View File

@ -159,10 +159,10 @@ instance_of_cinit;
* the mutex). * the mutex).
*/ */
static boost::once_flag debugPrintInitFlag = BOOST_ONCE_INIT; static std::once_flag debugPrintInitFlag;
/** /**
* We use boost::call_once() to make sure mutexDebugLog and * We use std::call_once() to make sure mutexDebugLog and
* vMsgsBeforeOpenLog are initialized in a thread-safe manner. * vMsgsBeforeOpenLog are initialized in a thread-safe manner.
* *
* NOTE: fileout, mutexDebugLog and sometimes vMsgsBeforeOpenLog * NOTE: fileout, mutexDebugLog and sometimes vMsgsBeforeOpenLog
@ -171,7 +171,7 @@ static boost::once_flag debugPrintInitFlag = BOOST_ONCE_INIT;
* tested, explicit destruction of these objects can be implemented. * tested, explicit destruction of these objects can be implemented.
*/ */
static FILE* fileout = nullptr; static FILE* fileout = nullptr;
static boost::mutex* mutexDebugLog = nullptr; static std::mutex* mutexDebugLog = nullptr;
static std::list<std::string>* vMsgsBeforeOpenLog; static std::list<std::string>* vMsgsBeforeOpenLog;
static int FileWriteStr(const std::string &str, FILE *fp) static int FileWriteStr(const std::string &str, FILE *fp)
@ -182,7 +182,7 @@ static int FileWriteStr(const std::string &str, FILE *fp)
static void DebugPrintInit() static void DebugPrintInit()
{ {
assert(mutexDebugLog == nullptr); assert(mutexDebugLog == nullptr);
mutexDebugLog = new boost::mutex(); mutexDebugLog = new std::mutex();
vMsgsBeforeOpenLog = new std::list<std::string>; vMsgsBeforeOpenLog = new std::list<std::string>;
} }
@ -194,8 +194,8 @@ fs::path GetDebugLogPath()
bool OpenDebugLog() bool OpenDebugLog()
{ {
boost::call_once(&DebugPrintInit, debugPrintInitFlag); std::call_once(debugPrintInitFlag, &DebugPrintInit);
boost::mutex::scoped_lock scoped_lock(*mutexDebugLog); std::lock_guard<std::mutex> scoped_lock(*mutexDebugLog);
assert(fileout == nullptr); assert(fileout == nullptr);
assert(vMsgsBeforeOpenLog); assert(vMsgsBeforeOpenLog);
@ -350,8 +350,8 @@ int LogPrintStr(const std::string &str)
} }
else if (fPrintToDebugLog) else if (fPrintToDebugLog)
{ {
boost::call_once(&DebugPrintInit, debugPrintInitFlag); std::call_once(debugPrintInitFlag, &DebugPrintInit);
boost::mutex::scoped_lock scoped_lock(*mutexDebugLog); std::lock_guard<std::mutex> scoped_lock(*mutexDebugLog);
// buffer if we haven't opened the log yet // buffer if we haven't opened the log yet
if (fileout == nullptr) { if (fileout == nullptr) {