AC_PosControl: Protect from divide-by-zero in get_stopping_point_xy

This commit is contained in:
Jonathan Challinger 2014-10-10 04:56:01 -07:00 committed by Randy Mackay
parent 5f55944e43
commit 4a397a8d67
1 changed files with 1 additions and 1 deletions

View File

@ -472,7 +472,7 @@ void AC_PosControl::get_stopping_point_xy(Vector3f &stopping_point) const
float vel_total = pythagorous2(curr_vel.x, curr_vel.y);
// avoid divide by zero by using current position if the velocity is below 10cm/s, kP is very low or acceleration is zero
if (kP <= 0.0f || _accel_cms <= 0.0f) {
if (kP <= 0.0f || _accel_cms <= 0.0f || vel_total == 0.0f) {
stopping_point.x = curr_pos.x;
stopping_point.y = curr_pos.y;
return;