From 6a519421c482620be9679fdc1ca480e106b4da80 Mon Sep 17 00:00:00 2001 From: Derk-Jan Hartman Date: Sun, 28 Apr 2013 11:54:20 +0200 Subject: [PATCH] Bug 41677: Protect against tex nodes wrapped in tex nodes. This gracefully handles: $ x^2 $, generated when you put math tags inside element attributes. Change-Id: I997fc5e87b320879c99f7560fb023876ab6ef573 --- modules/MathJax/extensions/wiki2jax.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/MathJax/extensions/wiki2jax.js b/modules/MathJax/extensions/wiki2jax.js index 667acfb..77f8baf 100644 --- a/modules/MathJax/extensions/wiki2jax.js +++ b/modules/MathJax/extensions/wiki2jax.js @@ -46,7 +46,7 @@ MathJax.Extension.wiki2jax = { if (node.nodeName == 'IMG') { tex = node.alt; } else { - tex = node.innerHTML.replace(/^\$/,"").replace(/\$$/,""); + tex = $(node).text().replace(/^\$/,"").replace(/\$$/,""); tex = tex.replace(/</g,"<").replace(/>/g,">").replace(/&/g,"&").replace(/ /g," "); } @@ -69,7 +69,7 @@ MathJax.Extension.wiki2jax = { createPreview: function (node) { var preview; - if (this.config.preview === "TeX") {preview = [this.filterPreview(node.innerHTML)]} + if (this.config.preview === "TeX") {preview = [this.filterPreview($(node).text())]} else if (this.config.preview instanceof Array) {preview = this.config.preview} if (preview) { preview = MathJax.HTML.Element("span",{className: MathJax.Hub.config.preRemoveClass},preview);