diff --git a/app/lib/streams/WS2PStreamer.ts b/app/lib/streams/WS2PStreamer.ts index 5b9af62535aab766694ca5dbbd682a5e71226c90..12b41e09b6d9e748fda65c38dfaa4e1956ca6db1 100644 --- a/app/lib/streams/WS2PStreamer.ts +++ b/app/lib/streams/WS2PStreamer.ts @@ -32,6 +32,7 @@ export class WS2PStreamer extends stream.Transform { } } catch (e) { logger.warn('WS2P >> Streamer >>', e) + this.ws2pc.close() } done && done(); } diff --git a/app/modules/ws2p/lib/WS2PClient.ts b/app/modules/ws2p/lib/WS2PClient.ts index f30c105037481f0a285c29aaadb3a9f9c69d2d55..1571bae3544bb356f72200d90e03720c0f4776f1 100644 --- a/app/modules/ws2p/lib/WS2PClient.ts +++ b/app/modules/ws2p/lib/WS2PClient.ts @@ -22,9 +22,15 @@ export class WS2PClient { }, expectedPub ) - // Streaming const streamer = new WS2PStreamer(c) - server.pipe(streamer) + c.connected + .then(() => { + // Streaming + server.pipe(streamer) + }) + .catch(() => { + server.unpipe(streamer) + }) c.closed.then(() => { server.unpipe(streamer) })