@@ -758,7 +758,16 @@ bool WsjcppCore::recoursiveRemoveDir(const std::string& sDir) {
758758// ---------------------------------------------------------------------
759759// WsjcppLog
760760
761- std::mutex * WsjcppLog::g_WSJCPP_LOG_MUTEX = nullptr ;
761+ WsjcppLogGlobalConf::WsjcppLogGlobalConf () {
762+ //
763+ }
764+
765+ WsjcppLogGlobalConf::~WsjcppLogGlobalConf () {
766+ //
767+ }
768+
769+ WsjcppLogGlobalConf WsjcppLog::g_WSJCPP_LOG_GLOBAL_CONF;
770+ // std::mutex * WsjcppLog::g_WSJCPP_LOG_MUTEX = nullptr;
762771std::string WsjcppLog::g_WSJCPP_LOG_DIR = " ./" ;
763772std::string WsjcppLog::g_WSJCPP_LOG_FILE = " " ;
764773std::string WsjcppLog::g_WSJCPP_LOG_PREFIX_FILE = " " ;
@@ -822,7 +831,7 @@ void WsjcppLog::ok(const std::string &sTag, const std::string &sMessage) {
822831
823832std::vector<std::string> WsjcppLog::getLastLogMessages () {
824833 WsjcppLog::initGlobalVariables ();
825- std::lock_guard<std::mutex> lock (* WsjcppLog::g_WSJCPP_LOG_MUTEX );
834+ std::lock_guard<std::mutex> lock (WsjcppLog::g_WSJCPP_LOG_GLOBAL_CONF. logMutex );
826835 std::vector<std::string> vRet;
827836 for (int i = 0 ; i < g_WSJCPP_LOG_LAST_MESSAGES->size (); i++) {
828837 vRet.push_back (g_WSJCPP_LOG_LAST_MESSAGES->at (i));
@@ -869,18 +878,12 @@ void WsjcppLog::initGlobalVariables() {
869878 WsjcppLog::g_WSJCPP_LOG_LAST_MESSAGES = new std::deque<std::string>();
870879 // std::cout << WsjcppCore::currentTime_logformat() + ", " + WsjcppCore::threadId() + " Init last messages deque\r\n";
871880 }
872- // create mutex if not created
873- if (WsjcppLog::g_WSJCPP_LOG_MUTEX == nullptr ) {
874- WsjcppLog::g_WSJCPP_LOG_MUTEX = new std::mutex ();
875- // std::cout << WsjcppCore::currentTime_logformat() + ", " + WsjcppCore::threadId() + " Init mutex for log\r\n";
876- }
877881}
878882
879883// ---------------------------------------------------------------------
880884
881885void WsjcppLog::deinitGlobalVariables () {
882886 delete WsjcppLog::g_WSJCPP_LOG_LAST_MESSAGES;
883- delete WsjcppLog::g_WSJCPP_LOG_MUTEX;
884887}
885888
886889// ---------------------------------------------------------------------
@@ -889,7 +892,7 @@ void WsjcppLog::add(WsjcppColorModifier &clr, const std::string &sType, const st
889892 WsjcppLog::initGlobalVariables ();
890893 WsjcppLog::doLogRotateUpdateFilename ();
891894
892- std::lock_guard<std::mutex> lock (* WsjcppLog::g_WSJCPP_LOG_MUTEX );
895+ std::lock_guard<std::mutex> lock (WsjcppLog::g_WSJCPP_LOG_GLOBAL_CONF. logMutex );
893896 WsjcppColorModifier def (WsjcppColorCode::FG_DEFAULT);
894897
895898 std::string sLogMessage = WsjcppCore::currentTime_logformat () + " , " + WsjcppCore::threadId ()
0 commit comments