Divorce identity wipe from tryAgain functions

We'd like to live in a world where we can retry all the pending
conflicts in a conversation as a batch, which means we don't want to
wipe the identity key before processing each message. Thus, remove that
step from these handlers and encapsulate in a method on the conversation
model.
This commit is contained in:
lilia 2015-02-23 16:23:22 -08:00
parent c642854ddf
commit 857eee5003
5 changed files with 46 additions and 14 deletions

View file

@ -128,8 +128,7 @@ window.textsecure.messaging = function() {
}
var tryMessageAgain = function(number, encodedMessage, timestamp) {
textsecure.storage.devices.removeIdentityKeyForNumber(number);
var proto = textsecure.protobuf.PushMessageContent.decode(encodedMessage, 'binary');
var proto = textsecure.protobuf.PushMessageContent.decode(encodedMessage);
return new Promise(function(resolve, reject) {
sendMessageProto(timestamp, [number], proto, function(res) {
if (res.failure.length > 0)
@ -196,7 +195,7 @@ window.textsecure.messaging = function() {
if (error.message !== "Identity key changed")
registerError(number, "Failed to reload device keys", error);
else {
error = new textsecure.OutgoingIdentityKeyError(number, getString(message.encode()), timestamp);
error = new textsecure.OutgoingIdentityKeyError(number, message.toArrayBuffer(), timestamp);
registerError(number, "Identity key changed", error);
}
});