diff --git a/services/accesstokenmanager/main/cpp/src/permission/permission_manager.cpp b/services/accesstokenmanager/main/cpp/src/permission/permission_manager.cpp index 536d95bcc497f670686d79f9a0593cd13b77c5e9..bb68a51829b7008a0f1c7fdbc824f521ac7d8f91 100644 --- a/services/accesstokenmanager/main/cpp/src/permission/permission_manager.cpp +++ b/services/accesstokenmanager/main/cpp/src/permission/permission_manager.cpp @@ -525,16 +525,18 @@ bool PermissionManager::GetPermissionStatusAndFlag(const std::string& permission return false; } - for (const auto& perm : permsList) { - if (perm.permissionName == permissionName) { - status = perm.grantStatus[0]; - flag = static_cast(perm.grantFlags[0]); - - ACCESSTOKEN_LOG_DEBUG(LABEL, "permission:%{public}s, status:%{public}d, flag:%{public}d!", - permissionName.c_str(), status, flag); - return true; - } + auto iter = std::find_if(permsList.begin(), permsList.end(), [permissionName](const PermissionStateFull& perm) { + return permissionName == perm.permissionName; + }); + if (iter != permsList.end()) { + status = iter->grantStatus[0]; + flag = static_cast(iter->grantFlags[0]); + + ACCESSTOKEN_LOG_DEBUG(LABEL, "permission:%{public}s, status:%{public}d, flag:%{public}d!", + permissionName.c_str(), status, flag); + return true; } + return false; } diff --git a/services/accesstokenmanager/main/cpp/src/token/accesstoken_info_manager.cpp b/services/accesstokenmanager/main/cpp/src/token/accesstoken_info_manager.cpp index bc11ee317a186854d472e21287c5741022c9965d..13105845e225c7a8741337e16a05f706c2be371b 100644 --- a/services/accesstokenmanager/main/cpp/src/token/accesstoken_info_manager.cpp +++ b/services/accesstokenmanager/main/cpp/src/token/accesstoken_info_manager.cpp @@ -367,7 +367,6 @@ int AccessTokenInfoManager::RemoveNativeTokenInfo(AccessTokenID id) return RET_FAILED; } - bool isRemote = false; { Utils::UniqueWriteGuard infoGuard(this->nativeTokenInfoLock_); if (nativeTokenInfoMap_.count(id) == 0) { @@ -388,9 +387,7 @@ int AccessTokenInfoManager::RemoveNativeTokenInfo(AccessTokenID id) } AccessTokenIDManager::GetInstance().ReleaseTokenId(id); ACCESSTOKEN_LOG_INFO(LABEL, "remove native token %{public}u ok!", id); - if (!isRemote) { - RefreshTokenInfoIfNeeded(); - } + RefreshTokenInfoIfNeeded(); return RET_SUCCESS; }