From 727041f02065c0dd0ffa25831852f8958b318b1c Mon Sep 17 00:00:00 2001 From: Sabe Jones Date: Fri, 30 Nov 2018 16:19:22 -0600 Subject: [PATCH] fix(chat): escape regexes so parentheses etc. don't bust it --- website/client/components/chat/chatCard.vue | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/website/client/components/chat/chatCard.vue b/website/client/components/chat/chatCard.vue index dd5de80a9e..edebbe8315 100644 --- a/website/client/components/chat/chatCard.vue +++ b/website/client/components/chat/chatCard.vue @@ -298,7 +298,9 @@ export default { this.$emit('show-member-modal', memberId); }, atHighlight (text) { - const userRegex = new RegExp(`@(${this.user.auth.local.username}|${this.user.profile.name})(?:\\b)`, 'gi'); + const escapedDisplayName = escapeRegExp(this.user.profile.name); + const escapedUsername = escapeRegExp(this.user.auth.local.username); + const userRegex = new RegExp(`@(${escapedDisplayName}|${escapedUsername})(?:\\b)`, 'gi'); const atRegex = new RegExp(/(?!\b)@[\w-]+/g); if (userRegex.test(text)) {