node-steam-session
node-steam-session copied to clipboard
TypeError: Cannot read properties of null (reading 'state')
Hi! 👋
Firstly, thanks for your work on this project! 🙂
Today I used patch-package to patch [email protected] for the project I'm working on.
Sometimes I encounter an error:
TypeError: Cannot read properties of null (reading 'state')
at WebSocketCMTransport._disconnectIfApplicable (/node_modules/steam-session/src/transports/WebSocketCMTransport.ts:333:23)
at WebSocketCMTransport._handleWsMessage (/node_modules/steam-session/src/transports/WebSocketCMTransport.ts:243:10)
at WebSocket.<anonymous> (/node_modules/steam-session/src/transports/WebSocketCMTransport.ts:162:11)
at WebSocket.emit (node:events:513:28)
at /node_modules/websocket13/src/WebSocketBase.ts:611:11
at pipe (/node_modules/websocket-extensions/lib/pipeline/index.js:37:40)
at Pipeline._loop (/node_modules/websocket-extensions/lib/pipeline/index.js:44:3)
at Pipeline.processIncomingMessage (/node_modules/websocket-extensions/lib/pipeline/index.js:13:8)
at Extensions.processIncomingMessage (/node_modules/websocket-extensions/lib/websocket_extensions.js:133:20)
at WebSocket._dispatchDataFrame (/node_modules/websocket13/src/WebSocketBase.ts:587:20)
at WebSocket._handleFrame (/node_modules/websocket13/src/WebSocketBase.ts:583:8)
at WebSocket._handleData (/node_modules/websocket13/src/WebSocketBase.ts:369:8)
at TLSSocket.<anonymous> (/node_modules/websocket13/src/WebSocketBase.ts:175:10)
at TLSSocket.emit (node:events:513:28)
at addChunk (node:internal/streams/readable:324:12)
at readableAddChunk (node:internal/streams/readable:297:9)
at TLSSocket.Readable.push (node:internal/streams/readable:234:10)
at TLSWrap.onStreamRead (node:internal/stream_base_commons:190:23)
Here is the diff that solved my problem:
diff --git a/node_modules/steam-session/src/transports/WebSocketCMTransport.ts b/node_modules/steam-session/src/transports/WebSocketCMTransport.ts
index 150c09d..a1badfc 100644
--- a/node_modules/steam-session/src/transports/WebSocketCMTransport.ts
+++ b/node_modules/steam-session/src/transports/WebSocketCMTransport.ts
@@ -330,7 +330,7 @@ export default class WebSocketCMTransport implements ITransport {
}
_disconnectIfApplicable() {
- if (this._websocket.state == WsState.Connected) {
+ if (this._websocket && this._websocket.state == WsState.Connected) {
this._websocket.disconnect();
this._websocket = null;
}
This issue body was partially generated by patch-package.