Create new message for correction if the original is not available
Fixes #1172
This commit is contained in:
parent
3e7c8655ad
commit
c142437320
@ -295,8 +295,16 @@
|
|||||||
const replace = sizzle(`replace[xmlns="${Strophe.NS.MESSAGE_CORRECT}"]`, stanza).pop();
|
const replace = sizzle(`replace[xmlns="${Strophe.NS.MESSAGE_CORRECT}"]`, stanza).pop();
|
||||||
if (replace) {
|
if (replace) {
|
||||||
const msgid = replace && replace.getAttribute('id') || stanza.getAttribute('id'),
|
const msgid = replace && replace.getAttribute('id') || stanza.getAttribute('id'),
|
||||||
message = msgid && this.messages.findWhere({msgid}),
|
message = msgid && this.messages.findWhere({msgid});
|
||||||
older_versions = message.get('older_versions') || [];
|
|
||||||
|
if (!message) {
|
||||||
|
// XXX: Looks like we received a correction for a
|
||||||
|
// non-existing message, probably due to MAM.
|
||||||
|
// Not clear what can be done about this... we'll
|
||||||
|
// just create it as a separate message for now.
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
const older_versions = message.get('older_versions') || [];
|
||||||
older_versions.push(message.get('message'));
|
older_versions.push(message.get('message'));
|
||||||
message.save({
|
message.save({
|
||||||
'message': _converse.chatboxes.getMessageBody(stanza),
|
'message': _converse.chatboxes.getMessageBody(stanza),
|
||||||
|
Loading…
Reference in New Issue
Block a user