diff --git a/packages/lib/link/connectors.js b/packages/lib/link/connectors.js index 3ae4235b..e2aacdf7 100644 --- a/packages/lib/link/connectors.js +++ b/packages/lib/link/connectors.js @@ -163,6 +163,14 @@ class WebSocketBaseConnector extends events.EventEmitter { get closing() { return this._closing || this._state === "closed"; } + + /** + * True if the connector currently has a valid session that is either + * connected or in the process of resuming. + */ + get hasSession() { + return ["connected", "resuming"].includes(this._state); + } } /** diff --git a/packages/slave/slave.js b/packages/slave/slave.js index 5d03bc63..ecc492ed 100755 --- a/packages/slave/slave.js +++ b/packages/slave/slave.js @@ -945,6 +945,10 @@ class InstanceConnection extends libLink.Link { } async forwardEventToMaster(message, event) { + if (!this.slave.connector.hasSession) { + return; + } + event.send(this.slave, message.data); }