diff --git a/patches/server/Optimize-Pathfinder-Remove-Streams-Optimized-collect.patch b/patches/server/Optimize-Pathfinder-Remove-Streams-Optimized-collect.patch index b11cf324d9..4c3e09c658 100644 --- a/patches/server/Optimize-Pathfinder-Remove-Streams-Optimized-collect.patch +++ b/patches/server/Optimize-Pathfinder-Remove-Streams-Optimized-collect.patch @@ -100,8 +100,6 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 - }).min(Comparator.comparingInt(Path::getNodeCount)) : set.stream().map((target) -> { - return this.reconstructPath(target.getBestNode(), positions.get(target), false); - }).min(Comparator.comparingDouble(Path::getDistToTarget).thenComparingInt(Path::getNodeCount)); -- profiler.pop(); -- return optional.isEmpty() ? null : optional.get(); + // Paper start - Perf: remove streams and optimize collection + Path best = null; + boolean entryListIsEmpty = entryList.isEmpty(); @@ -112,6 +110,8 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 + if (best == null || comparator.compare(path, best) < 0) + best = path; + } + profiler.pop(); +- return optional.isEmpty() ? null : optional.get(); + return best; + // Paper end - Perf: remove streams and optimize collection }