Unwrap removeIdentityKey from calls to saveIdentity

saveIdentity is now reponsible for determining firstUse, so we must not remove
the existing key before updating it.

Previously, the implementation provided an extra check against overwritting an
existing key, but that should be done via isTrustedIdentity instead.

// FREEBIE
This commit is contained in:
lilia 2017-05-24 14:50:52 -07:00 committed by Scott Nonnenberg
parent 82469713d2
commit 3ca511a10a
2 changed files with 22 additions and 26 deletions

View file

@ -504,7 +504,6 @@
throw 'No conflicts to resolve';
}
return textsecure.storage.protocol.removeIdentityKey(number).then(function() {
return textsecure.storage.protocol.saveIdentity(number, identityKey).then(function() {
var promise = Promise.resolve();
var conflicts = this.messageCollection.filter(function(message) {
@ -524,7 +523,6 @@
});
return promise;
}.bind(this));
}.bind(this));
},
notify: function(message) {
if (!message.isIncoming()) {

View file

@ -293,13 +293,11 @@
if (!oldpublicKey || equalArrayBuffers(oldpublicKey, publicKey)) {
resolve(true);
} else if (!storage.get('safety-numbers-approval', true)) {
this.removeIdentityKey(identifier).then(function() {
this.saveIdentity(identifier, publicKey).then(function() {
console.log('Key changed for', identifier);
this.trigger('keychange', identifier);
resolve(true);
}.bind(this));
}.bind(this));
} else {
resolve(false);
}