1
0
mirror of https://github.com/Jermolene/TiddlyWiki5 synced 2024-11-23 10:07:19 +00:00

Fix crash with illegal tag names for element widget

Fixes #7122
This commit is contained in:
jeremy@jermolene.com 2022-12-20 17:31:51 +00:00
parent b37a356b5e
commit a5afed9384

View File

@ -30,10 +30,14 @@ ElementWidget.prototype.render = function(parent,nextSibling) {
this.parentDomNode = parent; this.parentDomNode = parent;
this.computeAttributes(); this.computeAttributes();
// Neuter blacklisted elements // Neuter blacklisted elements
this.tag = this.parseTreeNode.tag || "span"; this.tag = this.parseTreeNode.tag;
if($tw.config.htmlUnsafeElements.indexOf(this.tag) !== -1) { if($tw.config.htmlUnsafeElements.indexOf(this.tag) !== -1) {
this.tag = "safe-" + this.tag; this.tag = "safe-" + this.tag;
} }
// Restrict tag name to digits, letts and dashes
this.tag = this.tag.replace(/[^0-9a-zA-Z\-]/mg,"");
// Default to a span
this.tag = this.tag || "span";
// Adjust headings by the current base level // Adjust headings by the current base level
var headingLevel = ["h1","h2","h3","h4","h5","h6"].indexOf(this.tag); var headingLevel = ["h1","h2","h3","h4","h5","h6"].indexOf(this.tag);
if(headingLevel !== -1) { if(headingLevel !== -1) {