From 1647f9a616e224faf59bb1a222830e565b83d242 Mon Sep 17 00:00:00 2001 From: Jonathan G Rennison Date: Wed, 16 Jun 2021 22:04:19 +0100 Subject: [PATCH] Avoid redundant calls to DistanceManhattan in town_network_distance --- src/road.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) 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); });