From 29356bd5305ee6f9805a360acbcef2649123d6c1 Mon Sep 17 00:00:00 2001 From: canglan Date: Sun, 12 Jul 2026 13:04:58 +0800 Subject: [PATCH] fix: prevent $ interpolation in renderTemplate replacement --- backend/mailer.js | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/backend/mailer.js b/backend/mailer.js index d91bded..de2f35e 100644 --- a/backend/mailer.js +++ b/backend/mailer.js @@ -35,8 +35,9 @@ function renderTemplate(template, vars) { let { subject, body } = template; for (const [k, v] of Object.entries(vars)) { const re = new RegExp(`\\{\\{${k}\\}\\}`, 'g'); - subject = subject.replace(re, v || ''); - body = body.replace(re, v || ''); + const val = String(v ?? ''); + subject = subject.replace(re, () => val); + body = body.replace(re, () => val); } return { subject, body }; }