diff --git a/app/src/main/kotlin/com/tutpro/baresip/ContactActivity.kt b/app/src/main/kotlin/com/tutpro/baresip/ContactActivity.kt index 7579bba4..c9a8d622 100644 --- a/app/src/main/kotlin/com/tutpro/baresip/ContactActivity.kt +++ b/app/src/main/kotlin/com/tutpro/baresip/ContactActivity.kt @@ -62,8 +62,13 @@ class ContactActivity : AppCompatActivity() { String.format(getString(R.string.invalid_contact), newName)) return false } - if ((new || (Contact.contacts()[index].name != newName)) && - ContactsActivity.nameExists(newName)) { + var alert = false + if (new) + alert = ContactsActivity.nameExists(newName, true) + else + alert = (Contact.contacts()[index].name != newName) && + ContactsActivity.nameExists(newName, false) + if (alert) { Utils.alertView(this, getString(R.string.error), String.format(getString(R.string.contact_already_exists), newName)) return false diff --git a/app/src/main/kotlin/com/tutpro/baresip/ContactsActivity.kt b/app/src/main/kotlin/com/tutpro/baresip/ContactsActivity.kt index 2af339f8..38f1faec 100644 --- a/app/src/main/kotlin/com/tutpro/baresip/ContactsActivity.kt +++ b/app/src/main/kotlin/com/tutpro/baresip/ContactsActivity.kt @@ -109,7 +109,9 @@ class ContactsActivity : AppCompatActivity() { val parts = it.split("\"") if (parts.size == 3) { val name = parts[1] - val uri = parts[2].trim().substringAfter("<").substringBefore(">") + var uri = parts[2].trim() + if (uri.startsWith("<")) + uri = uri.substringAfter("<").substringBefore(">") // Currently no need to make baresip aware of the contact // Api.contact_add("\"$name\" $uri") Contact.contacts().add(Contact(name, uri)) @@ -127,9 +129,9 @@ class ContactsActivity : AppCompatActivity() { return name } - fun nameExists(name: String): Boolean { + fun nameExists(name: String, ignoreCase: Boolean): Boolean { for (c in Contact.contacts()) - if (c.name.equals(name, ignoreCase = true)) return true + if (c.name.equals(name, ignoreCase = ignoreCase)) return true return false }