From 22c5d0003228d43df61c7ad56d3da847e99321e5 Mon Sep 17 00:00:00 2001 From: Sam Anthony Date: Wed, 20 Nov 2024 10:27:38 -0500 Subject: tomulticast: fix off-by-one error in sequence number --- src/main/java/derms/net/tomulticast/Receive.java | 2 +- src/main/java/derms/net/tomulticast/TotalOrderMulticast.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'src/main/java/derms/net') diff --git a/src/main/java/derms/net/tomulticast/Receive.java b/src/main/java/derms/net/tomulticast/Receive.java index f95ee5f..06db127 100644 --- a/src/main/java/derms/net/tomulticast/Receive.java +++ b/src/main/java/derms/net/tomulticast/Receive.java @@ -41,7 +41,7 @@ class Receive extends TotalOrderMulticast implement while (!holdback.isEmpty()) { // Messages with lower sequence numbers are removed from the priority queue first. Message msg = holdback.peek(); - if (msg == null || msg.seq != seq+1) + if (msg == null || msg.seq != seq) return; // This is the next element in the sequence; deliver it. diff --git a/src/main/java/derms/net/tomulticast/TotalOrderMulticast.java b/src/main/java/derms/net/tomulticast/TotalOrderMulticast.java index 146f706..a6dc2a9 100644 --- a/src/main/java/derms/net/tomulticast/TotalOrderMulticast.java +++ b/src/main/java/derms/net/tomulticast/TotalOrderMulticast.java @@ -43,7 +43,7 @@ public abstract class TotalOrderMulticast { /** Increment the sequence number. */ protected void incSeq() { - if (seq < seq.MAX_VALUE-1) { + if (seq < seq.MAX_VALUE) { seq++; } else { log.warning("Sequence number overflow. Wrapping to 0."); -- cgit v1.2.3