diff --git a/app/src/main/java/org/thoughtcrime/securesms/contacts/sync/DirectoryHelper.java b/app/src/main/java/org/thoughtcrime/securesms/contacts/sync/DirectoryHelper.java index 11648445ea..8f9c82b9b2 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/contacts/sync/DirectoryHelper.java +++ b/app/src/main/java/org/thoughtcrime/securesms/contacts/sync/DirectoryHelper.java @@ -99,7 +99,7 @@ public class DirectoryHelper { Set databaseNumbers = sanitizeNumbers(recipientDatabase.getAllPhoneNumbers()); Set systemNumbers = sanitizeNumbers(ContactAccessor.getInstance().getAllContactsWithNumbers(context)); - refreshNumbers(context, databaseNumbers, systemNumbers, notifyOfNewUsers); + refreshNumbers(context, databaseNumbers, systemNumbers, notifyOfNewUsers, true); StorageSyncHelper.scheduleSyncForDataChange(); } @@ -123,7 +123,7 @@ public class DirectoryHelper { .map(Recipient::requireE164) .collect(Collectors.toSet()); - refreshNumbers(context, numbers, numbers, notifyOfNewUsers); + refreshNumbers(context, numbers, numbers, notifyOfNewUsers, false); } @WorkerThread @@ -217,7 +217,7 @@ public class DirectoryHelper { } @WorkerThread - private static void refreshNumbers(@NonNull Context context, @NonNull Set databaseNumbers, @NonNull Set systemNumbers, boolean notifyOfNewUsers) throws IOException { + private static void refreshNumbers(@NonNull Context context, @NonNull Set databaseNumbers, @NonNull Set systemNumbers, boolean notifyOfNewUsers, boolean removeSystemContactEntryForMissing) throws IOException { RecipientDatabase recipientDatabase = DatabaseFactory.getRecipientDatabase(context); Set allNumbers = SetUtil.union(databaseNumbers, systemNumbers); @@ -266,7 +266,7 @@ public class DirectoryHelper { stopwatch.split("update-registered"); - updateContactsDatabase(context, activeIds, true, result.getNumberRewrites()); + updateContactsDatabase(context, activeIds, removeSystemContactEntryForMissing, result.getNumberRewrites()); stopwatch.split("contacts-db");