diff --git a/bramble-core/src/main/java/org/briarproject/bramble/contact/ContactManagerImpl.java b/bramble-core/src/main/java/org/briarproject/bramble/contact/ContactManagerImpl.java index 821cfdc26cb44c4efb9cfe649d15b2d6780c80f8..7c6e77d0abfee7f80730f66c9e2caf0324392426 100644 --- a/bramble-core/src/main/java/org/briarproject/bramble/contact/ContactManagerImpl.java +++ b/bramble-core/src/main/java/org/briarproject/bramble/contact/ContactManagerImpl.java @@ -84,10 +84,13 @@ class ContactManagerImpl implements ContactManager { Author remote, AuthorId local, SecretKey rootKey, long timestamp, boolean alice, boolean verified, boolean active) throws DbException, GeneralSecurityException { - PublicKey theirPublicKey = db.getPendingContact(txn, p).getPublicKey(); + PendingContact pendingContact = db.getPendingContact(txn, p); db.removePendingContact(txn, p); + PublicKey theirPublicKey = pendingContact.getPublicKey(); ContactId c = db.addContact(txn, remote, local, theirPublicKey, verified); + String alias = pendingContact.getAlias(); + if (!alias.equals(remote.getName())) db.setContactAlias(txn, c, alias); KeyPair ourKeyPair = identityManager.getHandshakeKeys(txn); keyManager.addContact(txn, c, theirPublicKey, ourKeyPair); keyManager.addRotationKeys(txn, c, rootKey, timestamp, alice, active);