From c1f4a2b451b450c3465aab8d34fc6aec3c97f4a6 Mon Sep 17 00:00:00 2001 From: liusiyang Date: Fri, 5 Jun 2026 15:00:20 +0800 Subject: [PATCH] =?UTF-8?q?update=20=E5=90=8C=E6=AD=A5cell=E5=8F=82?= =?UTF-8?q?=E6=95=B0=E5=BB=B6=E8=BF=9F=E6=9B=B4=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ConfigModule/src/ConfigInstance.cpp | 1 + ConfigModule/src/ConfigManager.cpp | 8 +++++++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/ConfigModule/src/ConfigInstance.cpp b/ConfigModule/src/ConfigInstance.cpp index 8755cd0..4b225da 100644 --- a/ConfigModule/src/ConfigInstance.cpp +++ b/ConfigModule/src/ConfigInstance.cpp @@ -213,6 +213,7 @@ int ConfigInstance::Updata_Check(Json::Value json_value) int ConfigInstance::SetStatus(int nConfigType) { + std::lock_guard lock(mutex_status); for (int i = 0; i < MAX_USER_COUNT; i++) { m_USER_ConfigUpdataStatusList[nConfigType][i] = true; diff --git a/ConfigModule/src/ConfigManager.cpp b/ConfigModule/src/ConfigManager.cpp index 1d78b57..70439ce 100644 --- a/ConfigModule/src/ConfigManager.cpp +++ b/ConfigModule/src/ConfigManager.cpp @@ -203,6 +203,7 @@ int ConfigManager::UpdateConfig() if (!std::filesystem::exists(strConfigPath)) { strConfigPath = m_strConfigRootPath + "/param.json"; } + printf("read param %s\n", strConfigPath.c_str()); std::shared_ptr temConfig = ConfigBase::GetInstance(); re = LoadParamConfig(temConfig, strConfigPath); if (re != 0) @@ -218,7 +219,12 @@ int ConfigManager::UpdateConfig() printf("Error >>>> camear Name is empty \n"); continue; } - Config_instances_[p.commonCheckConfig.baseConfig.strCamearName] = temConfig; + auto it = Config_instances_.find(p.commonCheckConfig.baseConfig.strCamearName); + if (it != Config_instances_.end() && it->second) { + LoadParamConfig(it->second, strConfigPath); + } else { + Config_instances_[p.commonCheckConfig.baseConfig.strCamearName] = temConfig; + } } // getchar();