From 0dead738374056d0c8a43ca06331e9e5ff71fdf8 Mon Sep 17 00:00:00 2001 From: Travis Ralston Date: Tue, 3 Dec 2019 12:29:50 -0700 Subject: [PATCH] Update alias handling Fixes https://github.com/vector-im/riot-web/issues/11551 --- src/models/room.js | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/models/room.js b/src/models/room.js index e6d24c5d5..77f12e845 100644 --- a/src/models/room.js +++ b/src/models/room.js @@ -839,9 +839,15 @@ Room.prototype.getAliases = function() { for (let i = 0; i < aliasEvents.length; ++i) { const aliasEvent = aliasEvents[i]; if (utils.isArray(aliasEvent.getContent().aliases)) { - Array.prototype.push.apply( - aliasStrings, aliasEvent.getContent().aliases, - ); + const filteredAliases = aliasEvent.getContent().aliases.filter(a => { + if (typeof(a) !== "string") return false; + if (a[0] !== '#') return false; + if (!a.endsWith(`:${aliasEvent.getStateKey()}`)) return false; + + // It's probably valid by here. + return true; + }); + Array.prototype.push.apply(aliasStrings, filteredAliases); } } }