From 43dd9731d90ce3962d96f51edee3dc3fd021c264 Mon Sep 17 00:00:00 2001 From: Jiangtao Hu Date: Wed, 16 Aug 2017 15:49:21 -0700 Subject: [PATCH] planning: speed optimizer skips when no path data is available. --- .../optimizer/dp_st_speed/dp_st_speed_optimizer.cc | 6 ++++++ .../qp_spline_st_speed/qp_spline_st_speed_optimizer.cc | 7 +++++++ 2 files changed, 13 insertions(+) diff --git a/modules/planning/optimizer/dp_st_speed/dp_st_speed_optimizer.cc b/modules/planning/optimizer/dp_st_speed/dp_st_speed_optimizer.cc index a2de7d6792..15f41f491a 100644 --- a/modules/planning/optimizer/dp_st_speed/dp_st_speed_optimizer.cc +++ b/modules/planning/optimizer/dp_st_speed/dp_st_speed_optimizer.cc @@ -59,6 +59,12 @@ Status DpStSpeedOptimizer::Process(const PathData& path_data, return Status(ErrorCode::PLANNING_ERROR, "Not inited."); } + if (path_data.discretized_path().NumOfPoints() == 0) { + std::string msg("Empty path data"); + AERROR << msg; + return Status(ErrorCode::PLANNING_ERROR, msg); + } + StBoundaryMapper boundary_mapper(st_boundary_config_, reference_line, path_data, dp_st_speed_config_.total_path_length(), diff --git a/modules/planning/optimizer/qp_spline_st_speed/qp_spline_st_speed_optimizer.cc b/modules/planning/optimizer/qp_spline_st_speed/qp_spline_st_speed_optimizer.cc index 17537f91cb..e9c07fb56e 100644 --- a/modules/planning/optimizer/qp_spline_st_speed/qp_spline_st_speed_optimizer.cc +++ b/modules/planning/optimizer/qp_spline_st_speed/qp_spline_st_speed_optimizer.cc @@ -59,6 +59,13 @@ Status QpSplineStSpeedOptimizer::Process(const PathData& path_data, AERROR << "Please call Init() before Process."; return Status(ErrorCode::PLANNING_ERROR, "Not init."); } + + if (path_data.discretized_path().NumOfPoints() == 0) { + std::string msg("Empty path data"); + AERROR << msg; + return Status(ErrorCode::PLANNING_ERROR, msg); + } + StBoundaryMapper boundary_mapper( st_boundary_config_, reference_line, path_data, qp_spline_st_speed_config_.total_path_length(), -- GitLab