fix(WebSocketConnection): make errors in event handlers throw again

The error from something like client.on('ready', () => undefined.f);
would just be emitted as debug event instead of being thrown.

Simply moving the emitting part out of the try catch again solves this.
This commit is contained in:
Pascal
2018-01-20 09:05:07 +01:00
parent bf0a68dbac
commit a22b856494

View File

@@ -269,13 +269,15 @@ class WebSocketConnection extends EventEmitter {
this.inflate.push(data, flush && zlib.Z_SYNC_FLUSH);
if (!flush) return;
let packet;
try {
const packet = WebSocket.unpack(this.inflate.result);
this.onPacket(packet);
if (this.client.listenerCount('raw')) this.client.emit('raw', packet);
packet = WebSocket.unpack(this.inflate.result);
} catch (err) {
this.client.emit('debug', err);
return;
}
this.onPacket(packet);
if (this.client.listenerCount('raw')) this.client.emit('raw', packet);
}
/**