From 9c5fa4a0667b8db75b592ee79e58477d9f7680ef Mon Sep 17 00:00:00 2001 From: Mark Qvist Date: Sun, 2 Nov 2025 11:35:12 +0100 Subject: [PATCH] Take stamp value into account when cleaning message store --- LXMF/LXMRouter.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/LXMF/LXMRouter.py b/LXMF/LXMRouter.py index 6c215f8..41b9618 100644 --- a/LXMF/LXMRouter.py +++ b/LXMF/LXMRouter.py @@ -1090,9 +1090,10 @@ class LXMRouter: for transient_id in self.propagation_entries.copy(): entry = self.propagation_entries[transient_id] filepath = entry[1] + stamp_value = entry[6] components = filepath.split("_") - if len(components) == 2 and float(components[1]) > 0 and len(os.path.split(components[0])[1]) == (RNS.Identity.HASHLENGTH//8)*2: + if len(components) >= 3 and float(components[1]) > 0 and len(os.path.split(components[0])[1]) == (RNS.Identity.HASHLENGTH//8)*2 and int(components[2]) == stamp_value: timestamp = float(components[1]) if now > timestamp+LXMRouter.MESSAGE_EXPIRY: RNS.log("Purging message "+RNS.prettyhexrep(transient_id)+" due to expiry", RNS.LOG_EXTREME)