This commit is contained in:
Johannes Rieken
2020-09-15 09:29:21 +02:00
parent 29afeee345
commit cfdeeac8ba
@@ -78,7 +78,7 @@ export class DiagnosticCollection implements vscode.DiagnosticCollection {
let lastUri: vscode.Uri | undefined;
// ensure stable-sort
mergeSort(first, DiagnosticCollection._compareIndexedTuplesByUri);
first = mergeSort([...first], DiagnosticCollection._compareIndexedTuplesByUri);
for (const tuple of first) {
const [uri, diagnostics] = tuple;
@@ -88,17 +88,17 @@ export class DiagnosticCollection implements vscode.DiagnosticCollection {
}
lastUri = uri;
toSync.push(uri);
this._data.set(uri.toString(), []);
this._data.set(uri, []);
}
if (!diagnostics) {
// [Uri, undefined] means clear this
const currentDiagnostics = this._data.get(uri.toString());
const currentDiagnostics = this._data.get(uri);
if (currentDiagnostics) {
currentDiagnostics.length = 0;
}
} else {
const currentDiagnostics = this._data.get(uri.toString());
const currentDiagnostics = this._data.get(uri);
if (currentDiagnostics) {
currentDiagnostics.push(...diagnostics);
}
@@ -198,7 +198,7 @@ export class DiagnosticCollection implements vscode.DiagnosticCollection {
}
}
private static _compareIndexedTuplesByUri(a: [vscode.Uri, vscode.Diagnostic[]], b: [vscode.Uri, vscode.Diagnostic[]]): number {
private static _compareIndexedTuplesByUri(a: [vscode.Uri, readonly vscode.Diagnostic[]], b: [vscode.Uri, readonly vscode.Diagnostic[]]): number {
if (a[0].toString() < b[0].toString()) {
return -1;
} else if (a[0].toString() > b[0].toString()) {