diff --git a/nav2_navfn_planner/src/navfn_planner.cpp b/nav2_navfn_planner/src/navfn_planner.cpp index 739ede3aa4..4b33070d09 100644 --- a/nav2_navfn_planner/src/navfn_planner.cpp +++ b/nav2_navfn_planner/src/navfn_planner.cpp @@ -162,6 +162,18 @@ NavfnPlanner::computePathToPose(const std::shared_ptr goal_handle) // TODO(mjeronimo): handle or reject an attempted pre-emption try { + // Get the current costmap + getCostmap(costmap_); + RCLCPP_DEBUG(get_logger(), "Costmap size: %d,%d", + costmap_.metadata.size_x, costmap_.metadata.size_y); + + // Update planner based on the new costmap size + if (isPlannerOutOfDate()) { + current_costmap_size_[0] = costmap_.metadata.size_x; + current_costmap_size_[1] = costmap_.metadata.size_y; + planner_->setNavArr(costmap_.metadata.size_x, costmap_.metadata.size_y); + } + // Get the current pose from the robot auto start = std::make_shared();