Skip to content

Commit ae5c6eb

Browse files
authored
Merge pull request #9 from Dennis-SEG/fix/tcpin-connection-state-race
fix: prevent double done() call in TCP node close handler
2 parents 81d3243 + a9d9356 commit ae5c6eb

1 file changed

Lines changed: 6 additions & 2 deletions

File tree

  • packages/node_modules/@node-red/nodes/core/network

packages/node_modules/@node-red/nodes/core/network/31-tcpin.js

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -192,9 +192,13 @@ module.exports = function(RED) {
192192
this.on('close', function(done) {
193193
node.doneClose = done;
194194
this.closing = true;
195-
if (client) { client.destroy(); }
196195
clearTimeout(reconnectTimeout);
197-
if (!node.connected) { done(); }
196+
if (client) {
197+
client.destroy();
198+
// done() will be called by client 'close' event handler
199+
} else {
200+
done();
201+
}
198202
});
199203
}
200204
else {

0 commit comments

Comments
 (0)