From 469751fe993b8a78c4616cd4fd230d953adab999 Mon Sep 17 00:00:00 2001 From: Michael Herzog Date: Wed, 13 May 2026 13:22:33 +0200 Subject: [PATCH] AsciiEffect: Add `escapeHTML()`. (#33567) --- examples/jsm/effects/AsciiEffect.js | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/examples/jsm/effects/AsciiEffect.js b/examples/jsm/effects/AsciiEffect.js index e163465166190b..db810c21709352 100644 --- a/examples/jsm/effects/AsciiEffect.js +++ b/examples/jsm/effects/AsciiEffect.js @@ -119,6 +119,19 @@ class AsciiEffect { } + const htmlEscapes = { + '&': '&', + '<': '<', + '>': '>', + }; + + const reUnescapedHtml = /[&<>]/g; + + function escapeHTML( s ) { + + return s.replace( reUnescapedHtml, ( ch ) => htmlEscapes[ ch ] ); + + } const strFont = 'courier new, monospace'; @@ -141,7 +154,7 @@ class AsciiEffect { let aCharList; if ( charSet ) { - aCharList = ( charSet ).split( '' ); + aCharList = ( charSet ).split( '' ).map( escapeHTML ); } else {