From 49ae9607267a0d81ad08f03c6a0bca6c8f05f41e Mon Sep 17 00:00:00 2001 From: Stephen Paul Weber Date: Mon, 1 May 2023 09:15:00 -0500 Subject: [PATCH] Reusing TimerTask sometimes fails --- .../eu/siacs/conversations/entities/Conversation.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/main/java/eu/siacs/conversations/entities/Conversation.java b/src/main/java/eu/siacs/conversations/entities/Conversation.java index f9dddadfe9a6fe8a47e1ac535eb8c7935b084568..41c42d195d822ef1fddf3aa876246e732da9d54e 100644 --- a/src/main/java/eu/siacs/conversations/entities/Conversation.java +++ b/src/main/java/eu/siacs/conversations/entities/Conversation.java @@ -1451,7 +1451,13 @@ public class Conversation extends AbstractEntity implements Blockable, Comparabl @Override public void run() { if (getAccount().getStatus() != Account.State.ONLINE) { - new Timer().schedule(this, 1000); + final TimerTask self = this; + new Timer().schedule(new TimerTask() { + @Override + public void run() { + self.run(); + } + }, 1000); } else { xmppConnectionService.sendIqPacket(getAccount(), packet, (a, iq) -> { session.updateWithResponse(iq);