From 7218d4725141282b1c49e0f146293876eeda9041 Mon Sep 17 00:00:00 2001 From: Matt Bierner Date: Fri, 8 Nov 2019 13:28:24 -0800 Subject: [PATCH] Make sure we don't try calling a cached `getErr` on a closed resources that are in the getErr queue --- .../src/features/bufferSyncSupport.ts | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/extensions/typescript-language-features/src/features/bufferSyncSupport.ts b/extensions/typescript-language-features/src/features/bufferSyncSupport.ts index 3aafeb61e60..54cb3e0bc5f 100644 --- a/extensions/typescript-language-features/src/features/bufferSyncSupport.ts +++ b/extensions/typescript-language-features/src/features/bufferSyncSupport.ts @@ -427,6 +427,7 @@ export default class BufferSyncSupport extends Disposable { return; } this.pendingDiagnostics.delete(resource); + this.pendingGetErr?.files.delete(resource); this.syncedBuffers.delete(resource); syncedBuffer.close(); this._onDelete.fire(resource); @@ -523,7 +524,9 @@ export default class BufferSyncSupport extends Disposable { this.pendingGetErr.cancel(); for (const file of this.pendingGetErr.files.entries) { - orderedFileSet.set(file.resource, undefined); + if (this.syncedBuffers.get(file.resource)) { + orderedFileSet.set(file.resource, undefined); + } } }