From 40f933d7b48eb867febb0e3f091d008790aee418 Mon Sep 17 00:00:00 2001 From: Johannes Rieken Date: Tue, 3 Oct 2017 09:46:35 +0200 Subject: [PATCH] use stable sort for groupBy, #35512 --- src/vs/base/common/arrays.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/vs/base/common/arrays.ts b/src/vs/base/common/arrays.ts index 26ab086e6c9..7cb942a84f8 100644 --- a/src/vs/base/common/arrays.ts +++ b/src/vs/base/common/arrays.ts @@ -113,7 +113,7 @@ function _divideAndMerge(data: T[], compare: (a: T, b: T) => number): void { export function groupBy(data: T[], compare: (a: T, b: T) => number): T[][] { const result: T[][] = []; let currentGroup: T[]; - for (const element of data.slice(0).sort(compare)) { + for (const element of mergeSort(data.slice(0), compare)) { if (!currentGroup || compare(currentGroup[0], element) !== 0) { currentGroup = [element]; result.push(currentGroup);