]> nmode's Git Repositories - signal-cli/commitdiff
Check if configuration message contains value before using it
authorAsamK <asamk@gmx.de>
Fri, 15 Oct 2021 19:18:47 +0000 (21:18 +0200)
committerAsamK <asamk@gmx.de>
Fri, 15 Oct 2021 19:18:47 +0000 (21:18 +0200)
lib/src/main/java/org/asamk/signal/manager/helper/IncomingMessageHandler.java

index 16f47d3c8458e993e21025e915ae006e8394543e..47aa6156bb40f9e277143f0ca9c7ff5d0fd05a4f 100644 (file)
@@ -358,11 +358,19 @@ public final class IncomingMessageHandler {
         if (syncMessage.getConfiguration().isPresent()) {
             final var configurationMessage = syncMessage.getConfiguration().get();
             final var configurationStore = account.getConfigurationStore();
-            configurationStore.setReadReceipts(configurationMessage.getReadReceipts().orNull());
-            configurationStore.setLinkPreviews(configurationMessage.getLinkPreviews().orNull());
-            configurationStore.setTypingIndicators(configurationMessage.getTypingIndicators().orNull());
-            configurationStore.setUnidentifiedDeliveryIndicators(configurationMessage.getUnidentifiedDeliveryIndicators()
-                    .orNull());
+            if (configurationMessage.getReadReceipts().isPresent()) {
+                configurationStore.setReadReceipts(configurationMessage.getReadReceipts().get());
+            }
+            if (configurationMessage.getLinkPreviews().isPresent()) {
+                configurationStore.setLinkPreviews(configurationMessage.getLinkPreviews().get());
+            }
+            if (configurationMessage.getTypingIndicators().isPresent()) {
+                configurationStore.setTypingIndicators(configurationMessage.getTypingIndicators().get());
+            }
+            if (configurationMessage.getUnidentifiedDeliveryIndicators().isPresent()) {
+                configurationStore.setUnidentifiedDeliveryIndicators(configurationMessage.getUnidentifiedDeliveryIndicators()
+                        .get());
+            }
         }
         return actions;
     }