From e4b3119f7d68f37daaf448496ec0f0ed4e340aed Mon Sep 17 00:00:00 2001 From: Phillip Thelen Date: Wed, 18 Sep 2019 12:29:23 +0200 Subject: [PATCH] fix crash when parsing markdown --- .../android/habitica/ui/helpers/MarkdownParser.kt | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/helpers/MarkdownParser.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/helpers/MarkdownParser.kt index 515521063..454261e3b 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/helpers/MarkdownParser.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/helpers/MarkdownParser.kt @@ -34,11 +34,18 @@ object MarkdownParser { if (input == null) { return "" } + val html = try { + processor.markdownToHtml(EmojiParser.parseEmojis(input.trim { it <= ' ' })) + } catch (e: UnsatisfiedLinkError) { + return input + } catch (e: NoClassDefFoundError) { + return input + } val output: SpannableStringBuilder = if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.N) { - Html.fromHtml(processor.markdownToHtml(EmojiParser.parseEmojis(input.trim { it <= ' ' })), FROM_HTML_MODE_LEGACY) as? SpannableStringBuilder + Html.fromHtml(html, FROM_HTML_MODE_LEGACY) as? SpannableStringBuilder } else { @Suppress("DEPRECATION") - (Html.fromHtml(processor.markdownToHtml(EmojiParser.parseEmojis(input.trim { it <= ' ' }))) as? SpannableStringBuilder) + (Html.fromHtml(html) as? SpannableStringBuilder) } ?: SpannableStringBuilder() val matcher = regex.matcher(output)