]> nmode's Git Repositories - signal-cli/commitdiff
When sending an end session message clear local session store also if sending message...
authorAsamK <asamk@gmx.de>
Tue, 21 Apr 2020 18:36:28 +0000 (20:36 +0200)
committerAsamK <asamk@gmx.de>
Tue, 21 Apr 2020 18:36:28 +0000 (20:36 +0200)
src/main/java/org/asamk/signal/manager/Manager.java

index cec0443142b988b22e8dc94f6d15dac37aeec714..b696491712d611c2709a195f4b3101fcbe7145f2 100644 (file)
@@ -732,7 +732,15 @@ public class Manager implements Signal {
         SignalServiceDataMessage.Builder messageBuilder = SignalServiceDataMessage.newBuilder()
                 .asEndSessionMessage();
 
-        sendMessageLegacy(messageBuilder, getSignalServiceAddresses(recipients));
+        final Collection<SignalServiceAddress> signalServiceAddresses = getSignalServiceAddresses(recipients);
+        try {
+            sendMessageLegacy(messageBuilder, signalServiceAddresses);
+        } catch (Exception e) {
+            for (SignalServiceAddress address : signalServiceAddresses) {
+                handleEndSession(address);
+            }
+            throw e;
+        }
     }
 
     @Override