Codefix: Don't mix signed and unsigned ints in unbunching calculations (#12514)

This commit is contained in:
Tyler Trahan 2024-04-17 14:42:49 -04:00 committed by GitHub
parent 0b9029b69c
commit 824687d1f0
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 3 additions and 3 deletions

View File

@ -2512,7 +2512,7 @@ void Vehicle::LeaveUnbunchingDepot()
SetWindowDirty(WC_VEHICLE_TIMETABLE, this->index);
/* Find the average travel time of vehicles that we share orders with. */
uint num_vehicles = 0;
int num_vehicles = 0;
TimerGameTick::Ticks total_travel_time = 0;
Vehicle *u = this->FirstShared();
@ -2525,10 +2525,10 @@ void Vehicle::LeaveUnbunchingDepot()
}
/* Make sure we cannot divide by 0. */
num_vehicles = std::max(num_vehicles, 1u);
num_vehicles = std::max(num_vehicles, 1);
/* Calculate the separation by finding the average travel time, then calculating equal separation (minimum 1 tick) between vehicles. */
TimerGameTick::Ticks separation = std::max((total_travel_time / num_vehicles / num_vehicles), 1u);
TimerGameTick::Ticks separation = std::max((total_travel_time / num_vehicles / num_vehicles), 1);
TimerGameTick::TickCounter next_departure = TimerGameTick::counter + separation;
/* Set the departure time of all vehicles that we share orders with. */