diff --git a/sa_profile/dhardware.cfg b/sa_profile/dhardware.cfg index 46561e1aa854e33c1a0f0df868246234a35177a0..68ad964f46ced647560ec96b9e606ea0e8fd6719 100644 --- a/sa_profile/dhardware.cfg +++ b/sa_profile/dhardware.cfg @@ -27,7 +27,8 @@ "ohos.permission.GET_TELEPHONY_STATE", "ohos.permission.MANAGE_SECURE_SETTINGS", "ohos.permission.ACCESS_BLUETOOTH", - "ohos.permission.GET_WIFI_INFO" + "ohos.permission.GET_WIFI_INFO", + "ohos.permission.ACCESS_DISTRIBUTED_MODEM" ], "permission_acls" : ["ohos.permission.MONITOR_DEVICE_NETWORK_STATE"], "jobs" : { diff --git a/services/distributedhardwarefwkservice/src/distributed_hardware_manager.cpp b/services/distributedhardwarefwkservice/src/distributed_hardware_manager.cpp index 5348135a7ab18dd9f4d4858bd171330b62d10e5f..7280add30125e71a2929f7a12b8b0991833cdaa3 100644 --- a/services/distributedhardwarefwkservice/src/distributed_hardware_manager.cpp +++ b/services/distributedhardwarefwkservice/src/distributed_hardware_manager.cpp @@ -47,7 +47,7 @@ IMPLEMENT_SINGLE_INSTANCE(DistributedHardwareManager); int32_t DistributedHardwareManager::LocalInit() { DHLOGI("DHFWK Local Init begin"); - if (isLocalInit_) { + if (isLocalInit_.load()) { DHLOGI("Local init already finish"); return DH_FWK_SUCCESS; } @@ -60,7 +60,7 @@ int32_t DistributedHardwareManager::LocalInit() LocalHardwareManager::GetInstance().Init(); DeviceParamMgr::GetInstance().QueryDeviceDataSyncMode(); DHLOGI("DHFWK Local Init end"); - isLocalInit_ = true; + isLocalInit_.store(true); return DH_FWK_SUCCESS; } @@ -68,14 +68,14 @@ int32_t DistributedHardwareManager::Initialize() { DHLOGI("DHFWK Normal Init begin"); std::lock_guard lock(dhInitMgrMutex_); - if (isAllInit_) { + if (isAllInit_.load()) { DHLOGI("DHMgr init already finish"); return DH_FWK_SUCCESS; } LocalInit(); ComponentManager::GetInstance().Init(); DHLOGI("DHFWK Normal Init end"); - isAllInit_ = true; + isAllInit_.store(true); return DH_FWK_SUCCESS; }