summaryrefslogtreecommitdiff
path: root/src/components/application_manager/src/resumption/resume_ctrl_impl.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/components/application_manager/src/resumption/resume_ctrl_impl.cc')
-rw-r--r--src/components/application_manager/src/resumption/resume_ctrl_impl.cc24
1 files changed, 23 insertions, 1 deletions
diff --git a/src/components/application_manager/src/resumption/resume_ctrl_impl.cc b/src/components/application_manager/src/resumption/resume_ctrl_impl.cc
index caa04c1ada..42dc335878 100644
--- a/src/components/application_manager/src/resumption/resume_ctrl_impl.cc
+++ b/src/components/application_manager/src/resumption/resume_ctrl_impl.cc
@@ -478,7 +478,20 @@ bool ResumeCtrlImpl::CheckPersistenceFilesForResumption(
const std::string& device_mac = application->mac_address();
bool result = resumption_storage_->GetSavedApplication(
application->policy_app_id(), device_mac, saved_app);
- return result;
+ if (result) {
+ if (saved_app.keyExists(strings::application_commands)) {
+ if (!CheckIcons(application, saved_app[strings::application_commands])) {
+ return false;
+ }
+ }
+ if (saved_app.keyExists(strings::application_choice_sets)) {
+ if (!CheckIcons(application,
+ saved_app[strings::application_choice_sets])) {
+ return false;
+ }
+ }
+ }
+ return true;
}
bool ResumeCtrlImpl::CheckApplicationHash(ApplicationSharedPtr application,
@@ -766,6 +779,15 @@ bool ResumeCtrlImpl::CheckAppRestrictions(
return result;
}
+bool ResumeCtrlImpl::CheckIcons(ApplicationSharedPtr application,
+ smart_objects::SmartObject& obj) {
+ using namespace smart_objects;
+ LOG4CXX_AUTO_TRACE(logger_);
+ const mobile_apis::Result::eType verify_images =
+ MessageHelper::VerifyImageFiles(obj, application, application_manager_);
+ return mobile_apis::Result::INVALID_DATA != verify_images;
+}
+
bool ResumeCtrlImpl::CheckDelayAfterIgnOn() {
using namespace date_time;
LOG4CXX_AUTO_TRACE(logger_);