summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/components/application_manager/src/policies/policy_handler.cc10
-rw-r--r--src/components/policy/policy_external/src/policy_helper.cc7
2 files changed, 8 insertions, 9 deletions
diff --git a/src/components/application_manager/src/policies/policy_handler.cc b/src/components/application_manager/src/policies/policy_handler.cc
index cbc434a485..1b64c5d7b4 100644
--- a/src/components/application_manager/src/policies/policy_handler.cc
+++ b/src/components/application_manager/src/policies/policy_handler.cc
@@ -951,6 +951,7 @@ void PolicyHandler::OnVehicleDataUpdated(
void PolicyHandler::OnPendingPermissionChange(
const std::string& policy_app_id) {
+ LOG4CXX_AUTO_TRACE(logger_);
LOG4CXX_DEBUG(logger_,
"PolicyHandler::OnPendingPermissionChange for "
<< policy_app_id);
@@ -989,8 +990,6 @@ void PolicyHandler::OnPendingPermissionChange(
if (permissions.appPermissionsConsentNeeded) {
MessageHelper::SendOnAppPermissionsChangedNotification(
app->app_id(), permissions, application_manager_);
-
- policy_manager_->RemovePendingPermissionChanges(policy_app_id);
// "Break" statement has to be here to continue processing in case of
// there is another "true" flag in permissions struct
break;
@@ -1000,8 +999,6 @@ void PolicyHandler::OnPendingPermissionChange(
if (permissions.isAppPermissionsRevoked) {
MessageHelper::SendOnAppPermissionsChangedNotification(
app->app_id(), permissions, application_manager_);
-
- policy_manager_->RemovePendingPermissionChanges(policy_app_id);
}
break;
}
@@ -1022,15 +1019,14 @@ void PolicyHandler::OnPendingPermissionChange(
commands::Command::SOURCE_SDL);
application_manager_.OnAppUnauthorized(app->app_id());
-
- policy_manager_->RemovePendingPermissionChanges(policy_app_id);
}
if (permissions.requestTypeChanged || permissions.requestSubTypeChanged) {
MessageHelper::SendOnAppPermissionsChangedNotification(
app->app_id(), permissions, application_manager_);
- policy_manager_->RemovePendingPermissionChanges(policy_app_id);
}
+
+ policy_manager_->RemovePendingPermissionChanges(policy_app_id);
}
bool PolicyHandler::SendMessageToSDK(const BinaryMessage& pt_string,
diff --git a/src/components/policy/policy_external/src/policy_helper.cc b/src/components/policy/policy_external/src/policy_helper.cc
index 3beeabce1e..bd83f24a92 100644
--- a/src/components/policy/policy_external/src/policy_helper.cc
+++ b/src/components/policy/policy_external/src/policy_helper.cc
@@ -302,7 +302,11 @@ void CheckAppPolicy::AddResult(const std::string& app_id,
void CheckAppPolicy::InsertPermission(const std::string& app_id,
const AppPermissions& permissions_diff) {
pm_->app_permissions_diff_lock_.Acquire();
- pm_->app_permissions_diff_.insert(std::make_pair(app_id, permissions_diff));
+ auto result = pm_->app_permissions_diff_.insert(
+ std::make_pair(app_id, permissions_diff));
+ if (!result.second) {
+ LOG4CXX_ERROR(logger_, "App ID: " << app_id << " already exists in map.");
+ }
pm_->app_permissions_diff_lock_.Release();
}
@@ -356,7 +360,6 @@ bool CheckAppPolicy::operator()(const AppPoliciesValueType& app_policy) {
"Permissions for application:" << app_id
<< " wasn't changed.");
AddResult(app_id, result);
- InsertPermission(app_id, permissions_diff);
return true;
}