From 3950f7741c214274245caf1833fe15cfcb38a88b Mon Sep 17 00:00:00 2001 From: Stephen Toub Date: Tue, 19 Mar 2024 13:33:19 -0400 Subject: [PATCH] Remove duplicative sorting when enumerating OrderBy.Take/Skip Fixes a recent perf regression on enumerating an OrderBy.Take/Skip that results in an extra sort. --- .../System.Linq/src/System/Linq/OrderedEnumerable.SpeedOpt.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/libraries/System.Linq/src/System/Linq/OrderedEnumerable.SpeedOpt.cs b/src/libraries/System.Linq/src/System/Linq/OrderedEnumerable.SpeedOpt.cs index e69eb734ea142..bf65a34b06efa 100644 --- a/src/libraries/System.Linq/src/System/Linq/OrderedEnumerable.SpeedOpt.cs +++ b/src/libraries/System.Linq/src/System/Linq/OrderedEnumerable.SpeedOpt.cs @@ -479,7 +479,7 @@ public override bool MoveNext() } else if (state == 1) { - TElement[] buffer = _source.ToArray(); + TElement[] buffer = _source._source.ToArray(); int count = buffer.Length; if (count > _minIndexInclusive) {