diff options
Diffstat (limited to 'src/components/application_manager/include/application_manager/state_controller_impl.h')
-rw-r--r-- | src/components/application_manager/include/application_manager/state_controller_impl.h | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/src/components/application_manager/include/application_manager/state_controller_impl.h b/src/components/application_manager/include/application_manager/state_controller_impl.h index 000569e450..c6121f5d1d 100644 --- a/src/components/application_manager/include/application_manager/state_controller_impl.h +++ b/src/components/application_manager/include/application_manager/state_controller_impl.h @@ -152,13 +152,14 @@ class StateControllerImpl : public event_engine::EventObserver, template <typename UnaryFunction> void ForEachApplication(UnaryFunction func) const { - DataAccessor<ApplicationSet> accessor = app_mngr_.applications(); - ApplicationSet::iterator it = accessor.GetData().begin(); - for (; it != accessor.GetData().end(); ++it) { - ApplicationConstSharedPtr const_app = *it; - if (const_app) { - func(app_mngr_.application(const_app->app_id())); - } + ApplicationSet applications; + { + DataAccessor<ApplicationSet> accessor = app_mngr_.applications(); + applications = accessor.GetData(); + } + + for (const auto& app : applications) { + func(app); } } |