address issue 3175 by introducing special divide by zero handling

This commit is contained in:
zhexu14
2023-10-02 16:36:23 +11:00
committed by Raffson
parent 6f1ee9561b
commit 10aee31c7d
2 changed files with 6 additions and 0 deletions

View File

@@ -29,6 +29,11 @@ class Navigating(InFlight):
events.update_flight_position(self.flight, self.estimate_position())
def progress(self) -> float:
# if next waypoint is very close, assume we reach it immediately to avoid divide
# by zero error
if self.total_time_to_next_waypoint.total_seconds() < 1:
return 1.0
return (
self.elapsed_time.total_seconds()
/ self.total_time_to_next_waypoint.total_seconds()