diff --git a/unpacked/jax/output/HTML-CSS/jax.js b/unpacked/jax/output/HTML-CSS/jax.js
index 6ece947af..74f64f906 100644
--- a/unpacked/jax/output/HTML-CSS/jax.js
+++ b/unpacked/jax/output/HTML-CSS/jax.js
@@ -84,19 +84,22 @@
this.div.style.fontStyle = (font.style||"normal");
}
var W = this.getComparisonWidths(font.testString,font.noStyleChar);
+ var found = false;
if (W) {
this.div.style.fontFamily = "'"+font.family+"',"+this.comparisonFont[0];
if (this.div.offsetWidth == W[0]) {
this.div.style.fontFamily = "'"+font.family+"',"+this.comparisonFont[W[2]];
- if (this.div.offsetWidth == W[1]) {return false}
+ if (this.div.offsetWidth == W[1]) {found = true}
}
- if (this.div.offsetWidth != W[3] || this.div.offsetHeight != W[4]) {
- if (font.noStyleChar || !HTMLCSS.FONTDATA || !HTMLCSS.FONTDATA.hasStyleChar) {return true}
- for (var i = 0, m = this.testSize.length; i < m; i++)
- {if (this.testStyleChar(font,this.testSize[i])) {return true}}
+ if (!found && (this.div.offsetWidth != W[3] || this.div.offsetHeight != W[4])) {
+ if (!font.noStyleChar && HTMLCSS.FONTDATA && HTMLCSS.FONTDATA.hasStyleChar) {
+ for (var i = 0, m = this.testSize.length; i < m; i++)
+ {if (this.testStyleChar(font,this.testSize[i])) {found = true; m = 0}}
+ } else {found = true}
}
}
- return false;
+ if (HTMLCSS.safariTextNodeBug) {this.div.innerHTML = ""} else {this.text.nodeValue = ""}
+ return found;
},
styleChar: "\uEFFD", // width encodes style