From 634437d22dc7120718fdb693b6b8c072aa153e60 Mon Sep 17 00:00:00 2001 From: AsamK Date: Thu, 26 Aug 2021 15:26:25 +0200 Subject: [PATCH] Delete cached failed messages after 30 days --- lib/src/main/java/org/asamk/signal/manager/Manager.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/lib/src/main/java/org/asamk/signal/manager/Manager.java b/lib/src/main/java/org/asamk/signal/manager/Manager.java index 0d06dfba..bbdfa9e5 100644 --- a/lib/src/main/java/org/asamk/signal/manager/Manager.java +++ b/lib/src/main/java/org/asamk/signal/manager/Manager.java @@ -851,6 +851,11 @@ public class Manager implements Closeable { try { content = dependencies.getCipher().decrypt(envelope); } catch (ProtocolUntrustedIdentityException e) { + if (System.currentTimeMillis() - envelope.getServerDeliveredTimestamp() > 1000L * 60 * 60 * 24 * 30) { + // Envelope is more than a month old, cleaning up. + cachedMessage.delete(); + return null; + } if (!envelope.hasSource()) { final var identifier = e.getSender(); final var recipientId = resolveRecipient(identifier); -- 2.50.1