Prefer remote value for profile sharing during storage sync.
This commit is contained in:
parent
9cf7eec247
commit
864a1d5e93
2 changed files with 3 additions and 3 deletions
|
@ -84,7 +84,7 @@ class ContactConflictMerger implements StorageSyncHelper.ConflictMerger<SignalCo
|
||||||
IdentityState identityState = remote.getIdentityState();
|
IdentityState identityState = remote.getIdentityState();
|
||||||
byte[] identityKey = remote.getIdentityKey().or(local.getIdentityKey()).orNull();
|
byte[] identityKey = remote.getIdentityKey().or(local.getIdentityKey()).orNull();
|
||||||
boolean blocked = remote.isBlocked();
|
boolean blocked = remote.isBlocked();
|
||||||
boolean profileSharing = remote.isProfileSharingEnabled() || local.isProfileSharingEnabled();
|
boolean profileSharing = remote.isProfileSharingEnabled();
|
||||||
boolean archived = remote.isArchived();
|
boolean archived = remote.isArchived();
|
||||||
boolean matchesRemote = doParamsMatch(remote, unknownFields, address, givenName, familyName, profileKey, username, identityState, identityKey, blocked, profileSharing, archived);
|
boolean matchesRemote = doParamsMatch(remote, unknownFields, address, givenName, familyName, profileKey, username, identityState, identityKey, blocked, profileSharing, archived);
|
||||||
boolean matchesLocal = doParamsMatch(local, unknownFields, address, givenName, familyName, profileKey, username, identityState, identityKey, blocked, profileSharing, archived);
|
boolean matchesLocal = doParamsMatch(local, unknownFields, address, givenName, familyName, profileKey, username, identityState, identityKey, blocked, profileSharing, archived);
|
||||||
|
|
|
@ -44,7 +44,7 @@ public class ContactConflictMergerTest {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void merge_alwaysPreferRemote_exceptProfileSharingIsEitherOr() {
|
public void merge_alwaysPreferRemote() {
|
||||||
SignalContactRecord remote = new SignalContactRecord.Builder(byteArray(1), new SignalServiceAddress(UUID_A, E164_A))
|
SignalContactRecord remote = new SignalContactRecord.Builder(byteArray(1), new SignalServiceAddress(UUID_A, E164_A))
|
||||||
.setBlocked(true)
|
.setBlocked(true)
|
||||||
.setIdentityKey(byteArray(2))
|
.setIdentityKey(byteArray(2))
|
||||||
|
@ -79,7 +79,7 @@ public class ContactConflictMergerTest {
|
||||||
assertEquals("AFirst", merged.getGivenName().get());
|
assertEquals("AFirst", merged.getGivenName().get());
|
||||||
assertEquals("ALast", merged.getFamilyName().get());
|
assertEquals("ALast", merged.getFamilyName().get());
|
||||||
assertEquals("username A", merged.getUsername().get());
|
assertEquals("username A", merged.getUsername().get());
|
||||||
assertTrue(merged.isProfileSharingEnabled());
|
assertFalse(merged.isProfileSharingEnabled());
|
||||||
assertFalse(merged.isArchived());
|
assertFalse(merged.isArchived());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue