diff --git a/services/init/init_config.c b/services/init/init_config.c index dd0d30a68d43ed6f32f0cf10627bccb7d64a2cc5..6a5f11999e4e2a90e80b0c35e2988578dd8a5b0e 100644 --- a/services/init/init_config.c +++ b/services/init/init_config.c @@ -18,6 +18,7 @@ #include "init_service_manager.h" #include "init_utils.h" #include "init_param.h" +#include "init_group_manager.h" static void ParseAllImports(const cJSON *root); @@ -106,7 +107,7 @@ void ReadConfig(void) uint32_t len = sizeof(buffer); SystemReadParam("ohos.boot.mode", buffer, &len); INIT_LOGI("ohos.boot.mode %s", buffer); - if (strcmp(buffer, "charger_mode") == 0) { + if ((strcmp(buffer, "charger_mode") == 0) || (GetBootModeFromMisc() == GROUP_CHARGE)) { ParseInitCfg(INIT_CONFIGURATION_FILE, NULL); ReadFileInDir(OTHER_CHARGE_PATH, ".cfg", ParseInitCfg, NULL); ParseInitCfgByPriority();