diff --git a/packages/node_modules/@node-red/nodes/core/network/10-mqtt.js b/packages/node_modules/@node-red/nodes/core/network/10-mqtt.js index 2a0241316..0b89b29cd 100644 --- a/packages/node_modules/@node-red/nodes/core/network/10-mqtt.js +++ b/packages/node_modules/@node-red/nodes/core/network/10-mqtt.js @@ -719,6 +719,11 @@ module.exports = function(RED) { setStatusConnecting(node, true); try { node.serverProperties = {}; + if(node.client) { + //belt and braces to avoid left over clients + node.client.end(true); + node._clientRemoveListeners(); + } node.client = mqtt.connect(node.brokerurl, node.options); node.client.setMaxListeners(0); let callbackDone = false; //prevent re-connects causing node._clientOn('connect' firing callback multiple times