Skip to content

Commit f5fcc44

Browse files
committed
fix: Add disposed flag instead of relying on the languageclient being nullish
1 parent b852cd1 commit f5fcc44

File tree

1 file changed

+3
-1
lines changed

1 file changed

+3
-1
lines changed

src/languageClient.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ export interface StatusChangeEvent {
2828

2929
export class LanguageClientManager implements LanguageClient {
3030
languageClient?: MonacoLanguageClient
31+
private disposed: boolean = false
3132
protected readonly onDidChangeStatusEmitter = new Emitter<StatusChangeEvent>()
3233
protected readonly onErrorEmitter = new Emitter<Error>()
3334
protected readonly onWillCloseEmitter = new Emitter<void>()
@@ -63,6 +64,7 @@ export class LanguageClientManager implements LanguageClient {
6364
}
6465

6566
async dispose (): Promise<void> {
67+
this.disposed = true
6668
this.onWillCloseEmitter.fire()
6769
if (this.languageClient != null) {
6870
const languageClient = this.languageClient
@@ -95,7 +97,7 @@ export class LanguageClientManager implements LanguageClient {
9597
}
9698

9799
isDisposed (): boolean {
98-
return this.languageClient == null
100+
return this.disposed
99101
}
100102

101103
private handleClose = () => {

0 commit comments

Comments
 (0)