diff --git a/app/assets/javascripts/discourse/app/models/category.js b/app/assets/javascripts/discourse/app/models/category.js
index 940bb5ba39..2fe8ea5ac1 100644
--- a/app/assets/javascripts/discourse/app/models/category.js
+++ b/app/assets/javascripts/discourse/app/models/category.js
@@ -8,6 +8,7 @@ import { ajax } from "discourse/lib/ajax";
import { get } from "@ember/object";
import { getOwner } from "discourse-common/lib/get-owner";
import getURL from "discourse-common/lib/get-url";
+import { escapeExpression } from "discourse/lib/utilities";
const STAFF_GROUP_NAME = "staff";
@@ -56,6 +57,11 @@ const Category = RestModel.extend({
return { type: "category", id, category: this };
},
+ @discourseComputed("name")
+ escapeName(name) {
+ return escapeExpression(name);
+ },
+
@discourseComputed("parentCategory.ancestors")
ancestors(parentAncestors) {
return [...(parentAncestors || []), this];
diff --git a/app/assets/javascripts/discourse/app/templates/components/category-title-link.hbs b/app/assets/javascripts/discourse/app/templates/components/category-title-link.hbs
index 43cec199dc..3f7ad86de3 100644
--- a/app/assets/javascripts/discourse/app/templates/components/category-title-link.hbs
+++ b/app/assets/javascripts/discourse/app/templates/components/category-title-link.hbs
@@ -4,7 +4,7 @@
{{#if category.read_restricted}}
{{d-icon lockIcon}}
{{/if}}
- {{dir-span category.name}}
+ {{dir-span category.escapeName}}
{{#if category.uploaded_logo.url}}
{{cdn-img