aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKN4CK3R <admin@oldschoolhack.me>2023-10-29 02:52:02 +0100
committerGitHub <noreply@github.com>2023-10-29 01:52:02 +0000
commit3c78cb832d9b12b5071a8ffaf30d955c240f4920 (patch)
tree324106a2c65bd95c554ab075e59da7008265bd33
parent319414dd82fec916ed5668c198afa1be606d88b4 (diff)
downloadgitea-3c78cb832d9b12b5071a8ffaf30d955c240f4920.tar.gz
gitea-3c78cb832d9b12b5071a8ffaf30d955c240f4920.zip
Change katex limits (#27823)
Fixes #27812 Use higher defaults again but limit the input size. ![grafik](https://github.com/go-gitea/gitea/assets/1666336/23cdf572-de30-4799-b9cf-ef386b1623b9)
-rw-r--r--web_src/js/markup/math.js14
1 files changed, 12 insertions, 2 deletions
diff --git a/web_src/js/markup/math.js b/web_src/js/markup/math.js
index 8427637a0f..872e50a452 100644
--- a/web_src/js/markup/math.js
+++ b/web_src/js/markup/math.js
@@ -15,18 +15,28 @@ export async function renderMath() {
import(/* webpackChunkName: "katex" */'katex/dist/katex.css'),
]);
+ const MAX_CHARS = 1000;
+ const MAX_SIZE = 25;
+ const MAX_EXPAND = 1000;
+
for (const el of els) {
const target = targetElement(el);
if (target.hasAttribute('data-render-done')) continue;
const source = el.textContent;
+
+ if (source.length > MAX_CHARS) {
+ displayError(target, new Error(`Math source of ${source.length} characters exceeds the maximum allowed length of ${MAX_CHARS}.`));
+ continue;
+ }
+
const displayMode = el.classList.contains('display');
const nodeName = displayMode ? 'p' : 'span';
try {
const tempEl = document.createElement(nodeName);
katex.render(source, tempEl, {
- maxSize: 25,
- maxExpand: 50,
+ maxSize: MAX_SIZE,
+ maxExpand: MAX_EXPAND,
displayMode,
});
target.replaceWith(tempEl);