diff --git a/packages/vscode-ws-jsonrpc/src/socket/reader.ts b/packages/vscode-ws-jsonrpc/src/socket/reader.ts index b0e3b2d7..ad0dcd93 100644 --- a/packages/vscode-ws-jsonrpc/src/socket/reader.ts +++ b/packages/vscode-ws-jsonrpc/src/socket/reader.ts @@ -53,12 +53,20 @@ export class WebSocketMessageReader extends AbstractMessageReader implements Mes return { dispose: () => { if (this.callback === callback) { + this.state = 'initial'; this.callback = undefined; } } }; } + override dispose() { + super.dispose(); + this.state = 'initial'; + this.callback = undefined; + this.events.splice(0, this.events.length); + } + // eslint-disable-next-line @typescript-eslint/no-explicit-any protected readMessage(message: any): void { if (this.state === 'initial') {