diff --git a/src/models/event-timeline-set.js b/src/models/event-timeline-set.js index 5b852f5b0..8f2fad30e 100644 --- a/src/models/event-timeline-set.js +++ b/src/models/event-timeline-set.js @@ -20,6 +20,7 @@ limitations under the License. const EventEmitter = require("events").EventEmitter; const utils = require("../utils"); const EventTimeline = require("./event-timeline"); +import {EventStatus} from "./event"; import logger from '../../src/logger'; import Relations from './relations'; @@ -749,7 +750,7 @@ EventTimelineSet.prototype.aggregateRelations = function(event) { return; } - if (event.isRedacted()) { + if (event.isRedacted() || event.status === EventStatus.CANCELLED) { return; } diff --git a/src/models/room.js b/src/models/room.js index 46eda57ec..a77aaa24f 100644 --- a/src/models/room.js +++ b/src/models/room.js @@ -1356,10 +1356,7 @@ Room.prototype._revertRedactionLocalEcho = function(redactionEvent) { // re-render after undoing redaction this.emit("Room.redactionCancelled", redactionEvent, this); // reapply relation now redaction failed - if ( - redactedEvent.isRelation() && - redactedEvent.status !== EventStatus.CANCELLED - ) { + if (redactedEvent.isRelation()) { this._aggregateNonLiveRelation(redactedEvent); } }