diff --git a/services/samgr/native/include/system_ability_manager_util.h b/services/samgr/native/include/system_ability_manager_util.h index 86272369039c53a0a9ebd852c92d1c9ef6a47e3c..05eca9fa354555df7f2ce898cc2f0081f6c4f202 100644 --- a/services/samgr/native/include/system_ability_manager_util.h +++ b/services/samgr/native/include/system_ability_manager_util.h @@ -49,6 +49,7 @@ public: static void FilterCommonSaProfile(const SaProfile& oldProfile, CommonSaProfile& newProfile); static bool CheckPengLai(); static void GetFilesByPriority(const std::string& path, std::vector& files); + static void GetFilesFromPath(const std::string& path, std::map& fileNamesMap); private: static std::shared_ptr setParmHandler_; }; diff --git a/services/samgr/native/source/system_ability_manager_util.cpp b/services/samgr/native/source/system_ability_manager_util.cpp index 1aee6a95a46c3b8a347ba5c85c04742ac9960ce3..0fbbbbad59fb50ff5f093ea63fd96e6c15600a29 100644 --- a/services/samgr/native/source/system_ability_manager_util.cpp +++ b/services/samgr/native/source/system_ability_manager_util.cpp @@ -40,7 +40,7 @@ constexpr const char* EVENT_EXTRA_DATA_ID = "extraDataId"; constexpr const char* MODULE_UPDATE_PARAM = "persist.samgr.moduleupdate"; constexpr const char* PENG_LAI_PARAM = "ohos.boot.minisys.mode"; constexpr const char* PENG_LAI = "penglai"; -constexpr const char* PENGLAI_PATH = "/sys_prod/profile/penglai"; +constexpr const char* PENGLAI_PATH = "profile/penglai"; std::shared_ptr SamgrUtil::setParmHandler_ = make_shared("setParmHandler"); bool SamgrUtil::IsNameInValid(const std::u16string& name) @@ -243,9 +243,8 @@ bool SamgrUtil::CheckPengLai() return paramValue == PENG_LAI; } -void SamgrUtil::GetFilesByPriority(const std::string& path, std::vector& fileNames) +void SamgrUtil::GetFilesFromPath(const std::string& path, std::map& fileNamesMap) { - std::map fileNamesMap; CfgFiles* filePaths = GetCfgFiles(path.c_str()); for (int i = 0; filePaths && i < MAX_CFG_POLICY_DIRS_CNT; i++) { if (filePaths->paths[i] == nullptr) { @@ -259,22 +258,24 @@ void SamgrUtil::GetFilesByPriority(const std::string& path, std::vector& fileNames) +{ + std::map fileNamesMap; + GetFilesFromPath(path, fileNamesMap); if (SamgrUtil::CheckPengLai()) { HILOGI("GetFilesByPriority penglai!"); - std::vector files; - GetDirFiles(PENGLAI_PATH, files); - for (const auto& file : files) { - HILOGD("GetFilesByPriority file : %{public}s!", file.c_str()); - fileNamesMap[fs::path(file).filename().string()] = file; - } + GetFilesFromPath(PENGLAI_PATH, fileNamesMap); } for (const auto& pair : fileNamesMap) { HILOGD("GetFilesByPriority files : %{public}s!", pair.second.c_str()); fileNames.push_back(pair.second); } - - FreeCfgFiles(filePaths); } }