From f53056975ddcd99fa813610be8e46045ff6a8868 Mon Sep 17 00:00:00 2001 From: Greyson Parrelli Date: Thu, 20 Aug 2026 19:35:00 +0000 Subject: [PATCH] Fix crash when syncing system contacts without local account data. --- .../thoughtcrime/securesms/contacts/ContactsSyncAdapter.java | 5 +++++ .../thoughtcrime/securesms/contacts/sync/ContactDiscovery.kt | 5 +++++ 2 files changed, 10 insertions(+) diff --git a/app/src/main/java/org/thoughtcrime/securesms/contacts/ContactsSyncAdapter.java b/app/src/main/java/org/thoughtcrime/securesms/contacts/ContactsSyncAdapter.java index 867d409443..c07807ba40 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/contacts/ContactsSyncAdapter.java +++ b/app/src/main/java/org/thoughtcrime/securesms/contacts/ContactsSyncAdapter.java @@ -42,6 +42,11 @@ public class ContactsSyncAdapter extends AbstractThreadedSyncAdapter { Context context = getContext(); + if (SignalStore.account().getAci() == null && SignalStore.account().getE164() == null) { + Log.i(TAG, "No local account data set, skipping all sync operations."); + return; + } + if (!SignalStore.account().isRegistered() || SignalStore.account().getAci() == null) { Log.i(TAG, "Not push registered. Just syncing contact info."); ContactDiscovery.syncRecipientInfoWithSystemContacts(context); diff --git a/app/src/main/java/org/thoughtcrime/securesms/contacts/sync/ContactDiscovery.kt b/app/src/main/java/org/thoughtcrime/securesms/contacts/sync/ContactDiscovery.kt index 197b68b0a5..db6b7e9cc4 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/contacts/sync/ContactDiscovery.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/contacts/sync/ContactDiscovery.kt @@ -136,6 +136,11 @@ object ContactDiscovery { return } + if (!Recipient.isSelfSet) { + Log.w(TAG, "[syncRecipientInfoWithSystemContacts] No self recipient yet, skipping.") + return + } + syncRecipientsWithSystemContacts( context = context, rewrites = emptyMap(),