diff --git a/src/road.cpp b/src/road.cpp index c7f410f01e..d8a134698b 100644 --- a/src/road.cpp +++ b/src/road.cpp @@ -938,11 +938,11 @@ void GeneratePublicRoads() IncreaseGeneratingWorldProgress(GWP_PUBLIC_ROADS); auto town_network_distance = [](const TileIndex town, const std::shared_ptr &network) { - const auto min_element = std::min_element(network->towns.begin(), network->towns.end(), [&](const TileIndex town_a, const TileIndex town_b) { - return DistanceManhattan(town, town_a) < DistanceManhattan(town, town_b); - }); - - return DistanceManhattan(*min_element, town); + int32 best = INT32_MAX; + for (TileIndex t : network->towns) { + best = std::min(best, DistanceManhattan(t, town)); + } + return best; }; sort(towns.begin(), towns.end(), [&](auto a, auto b) { return DistanceManhattan(a, main_town) < DistanceManhattan(b, main_town); });