From 84fc9d148b7cb790c6a1fde3c9c3529dacc705a5 Mon Sep 17 00:00:00 2001 From: satoshi-ota Date: Tue, 11 Apr 2023 10:12:10 +0900 Subject: [PATCH] fix(planner_manager): remove succeeded candidate module Signed-off-by: satoshi-ota --- planning/behavior_path_planner/src/planner_manager.cpp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/planning/behavior_path_planner/src/planner_manager.cpp b/planning/behavior_path_planner/src/planner_manager.cpp index 2e94522fb3183..cb5d70a855d7e 100644 --- a/planning/behavior_path_planner/src/planner_manager.cpp +++ b/planning/behavior_path_planner/src/planner_manager.cpp @@ -294,17 +294,22 @@ std::pair PlannerManager::runCandidateModu processing_time_.at(name) += stop_watch_.toc(name, true); } - const auto remove_failure_modules = [this](auto & m) { + const auto remove_expired_modules = [this](auto & m) { if (m->getCurrentStatus() == ModuleStatus::FAILURE) { deleteExpiredModules(m); return true; } + if (m->getCurrentStatus() == ModuleStatus::SUCCESS) { + deleteExpiredModules(m); + return true; + } + return false; }; executable_modules.erase( - std::remove_if(executable_modules.begin(), executable_modules.end(), remove_failure_modules), + std::remove_if(executable_modules.begin(), executable_modules.end(), remove_expired_modules), executable_modules.end()); if (executable_modules.empty()) {