kopia lustrzana https://github.com/ryukoposting/Signal-Android
Filter out invalid phone numbers from system contacts.
Some phones are putting UUIDs in phone number fields. Who knows why. Fixes #12191fork-5.53.8
rodzic
2a086ad574
commit
b8c42fa57e
|
@ -33,6 +33,7 @@ import org.thoughtcrime.securesms.util.Stopwatch
|
||||||
import org.thoughtcrime.securesms.util.TextSecurePreferences
|
import org.thoughtcrime.securesms.util.TextSecurePreferences
|
||||||
import org.thoughtcrime.securesms.util.Util
|
import org.thoughtcrime.securesms.util.Util
|
||||||
import org.whispersystems.signalservice.api.push.SignalServiceAddress
|
import org.whispersystems.signalservice.api.push.SignalServiceAddress
|
||||||
|
import org.whispersystems.signalservice.api.util.UuidUtil
|
||||||
import java.io.IOException
|
import java.io.IOException
|
||||||
import java.util.Calendar
|
import java.util.Calendar
|
||||||
|
|
||||||
|
@ -299,7 +300,9 @@ object ContactDiscovery {
|
||||||
contactsProvider().use { iterator ->
|
contactsProvider().use { iterator ->
|
||||||
while (iterator.hasNext()) {
|
while (iterator.hasNext()) {
|
||||||
val details = iterator.next()
|
val details = iterator.next()
|
||||||
val phoneDetailsWithoutSelf: List<ContactPhoneDetails> = details.numbers.filter { it.number != localNumber }
|
val phoneDetailsWithoutSelf: List<ContactPhoneDetails> = details.numbers
|
||||||
|
.filter { it.number != localNumber }
|
||||||
|
.filterNot { UuidUtil.isUuid(it.number) }
|
||||||
|
|
||||||
for (phoneDetails in phoneDetailsWithoutSelf) {
|
for (phoneDetails in phoneDetailsWithoutSelf) {
|
||||||
val realNumber: String = Util.getFirstNonEmpty(rewrites[phoneDetails.number], phoneDetails.number)
|
val realNumber: String = Util.getFirstNonEmpty(rewrites[phoneDetails.number], phoneDetails.number)
|
||||||
|
|
Ładowanie…
Reference in New Issue