From 99dd1167a5988fe998be73c514aefd097f06ea5a Mon Sep 17 00:00:00 2001 From: Erwan Croze Date: Mon, 4 Jun 2018 11:33:18 +0200 Subject: [PATCH] Fix contacts duplication --- src/android/org/linphone/contacts/ContactsManager.java | 10 +++++++++- src/android/org/linphone/contacts/LinphoneContact.java | 7 +++++++ .../org/linphone/contacts/LinphoneNumberOrAddress.java | 7 +++++++ 3 files changed, 23 insertions(+), 1 deletion(-) diff --git a/src/android/org/linphone/contacts/ContactsManager.java b/src/android/org/linphone/contacts/ContactsManager.java index 0a60449eb..2fee4e56b 100644 --- a/src/android/org/linphone/contacts/ContactsManager.java +++ b/src/android/org/linphone/contacts/ContactsManager.java @@ -264,7 +264,15 @@ public class ContactsManager extends ContentObserver { } public synchronized void setContacts(List c) { - contacts = c; + if (contacts.isEmpty()) { + contacts = c; + } else { + for (LinphoneContact contact : c) { + if (!contacts.contains(contact)) { + contacts.add(contact); + } + } + } } public synchronized void setSipContacts(List c) { diff --git a/src/android/org/linphone/contacts/LinphoneContact.java b/src/android/org/linphone/contacts/LinphoneContact.java index 0b83dffa8..0c5f5399a 100644 --- a/src/android/org/linphone/contacts/LinphoneContact.java +++ b/src/android/org/linphone/contacts/LinphoneContact.java @@ -75,6 +75,13 @@ public class LinphoneContact implements Serializable, Comparable