diff --git a/src/timetable_cmd.cpp b/src/timetable_cmd.cpp index 5823912c54..726f63a7d6 100644 --- a/src/timetable_cmd.cpp +++ b/src/timetable_cmd.cpp @@ -1044,7 +1044,11 @@ void UpdateVehicleTimetable(Vehicle *v, bool travelling) if (v->lateness_counter > (int)timetabled) { Ticks cycle = v->orders->GetTimetableTotalDuration(); if (cycle != INVALID_TICKS && v->lateness_counter > cycle) { - v->lateness_counter %= cycle; + if (cycle == 0) { + v->lateness_counter = 0; + } else { + v->lateness_counter %= cycle; + } } }