From 7cc6c8ff9e0445f0dfdb22275e1e9ccbec3aecc6 Mon Sep 17 00:00:00 2001 From: M66B Date: Tue, 13 Sep 2022 21:16:40 +0200 Subject: [PATCH] Placeholder $date$ range check --- app/src/main/java/eu/faircode/email/EntityAnswer.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/eu/faircode/email/EntityAnswer.java b/app/src/main/java/eu/faircode/email/EntityAnswer.java index 2ecc0626e6..1b91440c86 100644 --- a/app/src/main/java/eu/faircode/email/EntityAnswer.java +++ b/app/src/main/java/eu/faircode/email/EntityAnswer.java @@ -191,14 +191,16 @@ public class EntityAnswer implements Serializable { String v = text.substring(s + 5, e); if (v.startsWith("-") || v.startsWith("+")) { Integer days = Helper.parseInt(v.substring(1)); - if (days != null) { + if (days != null && days >= 0 && days < 10 * 365) { c = Calendar.getInstance(); c.add(Calendar.DATE, days * (v.startsWith("-") ? -1 : 1)); } } else if (TextUtils.isEmpty(v)) c = Calendar.getInstance(); - if (c != null) { + if (c == null) + s = text.indexOf("$date", e + 1); + else { v = Html.escapeHtml(SimpleDateFormat.getDateInstance(SimpleDateFormat.LONG).format(c.getTime())); text = text.substring(0, s) + v + text.substring(e + 1); s = text.indexOf("$date", s + v.length());