diff options
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.cc | 24 |
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_); |