Merge pull request #4940 from node-red/Delay-node-not-send-on-reset-if-queue-empty

Make delay node rate limit reset consistent - not send on reset.
This commit is contained in:
Nick O'Leary
2024-11-11 13:49:41 +00:00
committed by GitHub
2 changed files with 32 additions and 2 deletions

View File

@@ -253,7 +253,13 @@ module.exports = function(RED) {
if (node.allowrate && m.hasOwnProperty("rate") && !isNaN(parseFloat(m.rate))) {
node.rate = m.rate;
}
send(m);
if (msg.hasOwnProperty("reset")) {
if (msg.hasOwnProperty("flush")) {
node.buffer.push({msg: m, send: send, done: done});
}
}
else { send(m); }
node.reportDepth();
node.intervalID = setInterval(sendMsgFromBuffer, node.rate);
done();
@@ -303,7 +309,8 @@ module.exports = function(RED) {
node.droppedMsgs++;
}
}
} else {
}
else {
if (node.allowrate && msg.hasOwnProperty("rate") && !isNaN(parseFloat(msg.rate))) {
node.rate = msg.rate;
}