From 86b773ac07fad796bff9417863c03ee1b9755b24 Mon Sep 17 00:00:00 2001 From: Satoshi OTA <44889564+satoshi-ota@users.noreply.github.com> Date: Tue, 11 Apr 2023 13:19:23 +0900 Subject: [PATCH] fix(planner_manager): remove succeeded candidate module (#3346) 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 ddcd802989e2b..63352cfb9fee7 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()) {