From 1db2a69265dec89fc411f74b7535505a3e3d3251 Mon Sep 17 00:00:00 2001 From: M66B Date: Tue, 28 Nov 2023 11:43:30 +0100 Subject: [PATCH] Added fail-safe --- .../eu/faircode/email/StructuredEmail.java | 35 +++++++++++-------- 1 file changed, 21 insertions(+), 14 deletions(-) diff --git a/app/src/main/java/eu/faircode/email/StructuredEmail.java b/app/src/main/java/eu/faircode/email/StructuredEmail.java index 2cf20c916d..b26974901d 100644 --- a/app/src/main/java/eu/faircode/email/StructuredEmail.java +++ b/app/src/main/java/eu/faircode/email/StructuredEmail.java @@ -41,20 +41,27 @@ public class StructuredEmail { } public String getHtml(Context context) throws JSONException { - StringBuilder sb = new StringBuilder(); - getHtml(jroot, 0, sb); - - Document d = Document.createShell(""); - d.appendElement("hr"); - d.appendElement("div") - .attr("style", "font-size: larger !important;") - .text("Linked Data"); - d.appendElement("br"); - d.appendElement("div") - .attr("style", "font-size: smaller !important;") - .html(HtmlHelper.formatPlainText(sb.toString())); - d.appendElement("hr"); - return d.html(); + try { + StringBuilder sb = new StringBuilder(); + getHtml(jroot, 0, sb); + + Document d = Document.createShell(""); + d.body().appendElement("hr"); + d.body().appendElement("div") + .attr("style", "font-size: larger !important;") + .text("Linked Data"); + d.body().appendElement("br"); + d.body().appendElement("div") + .attr("style", "font-size: smaller !important;") + .html(HtmlHelper.formatPlainText(sb.toString())); + d.body().appendElement("hr"); + return d.body().html(); + } catch (Throwable ex) { + Log.e(ex); + Document d = Document.createShell(""); + d.body().append("pre").text(Log.formatThrowable(ex, false)); + return d.body().html(); + } } private void getHtml(Object obj, int indent, StringBuilder sb) throws JSONException {