From b7866be38dbf5eee38158902c549161437d34792 Mon Sep 17 00:00:00 2001
From: Torsten Grote <t@grobox.de>
Date: Tue, 4 Apr 2017 13:27:06 -0300
Subject: [PATCH] Move HTML Sanitation to DbThread

---
 .../briarproject/briar/android/blog/BaseControllerImpl.java | 6 +++++-
 .../java/org/briarproject/briar/android/util/UiUtils.java   | 4 +---
 2 files changed, 6 insertions(+), 4 deletions(-)

diff --git a/briar-android/src/main/java/org/briarproject/briar/android/blog/BaseControllerImpl.java b/briar-android/src/main/java/org/briarproject/briar/android/blog/BaseControllerImpl.java
index 41dbf65569..457dd26fa1 100644
--- a/briar-android/src/main/java/org/briarproject/briar/android/blog/BaseControllerImpl.java
+++ b/briar-android/src/main/java/org/briarproject/briar/android/blog/BaseControllerImpl.java
@@ -21,6 +21,7 @@ import org.briarproject.briar.api.blog.Blog;
 import org.briarproject.briar.api.blog.BlogCommentHeader;
 import org.briarproject.briar.api.blog.BlogManager;
 import org.briarproject.briar.api.blog.BlogPostHeader;
+import org.briarproject.briar.util.HtmlUtils;
 
 import java.util.ArrayList;
 import java.util.Collection;
@@ -33,6 +34,7 @@ import javax.annotation.Nullable;
 
 import static java.util.logging.Level.INFO;
 import static java.util.logging.Level.WARNING;
+import static org.briarproject.briar.util.HtmlUtils.ARTICLE;
 
 @MethodsNotNullByDefault
 @ParametersNotNullByDefault
@@ -229,6 +231,7 @@ abstract class BaseControllerImpl extends DbControllerImpl
 		return header;
 	}
 
+	@DatabaseExecutor
 	private BlogPostItem getItem(BlogPostHeader h) throws DbException {
 		String body;
 		if (h instanceof BlogCommentHeader) {
@@ -243,10 +246,11 @@ abstract class BaseControllerImpl extends DbControllerImpl
 		}
 	}
 
+	@DatabaseExecutor
 	private String getPostBody(MessageId m) throws DbException {
 		String body = bodyCache.get(m);
 		if (body == null) {
-			body = blogManager.getPostBody(m);
+			body = HtmlUtils.clean(blogManager.getPostBody(m), ARTICLE);
 			bodyCache.put(m, body);
 		}
 		//noinspection ConstantConditions
diff --git a/briar-android/src/main/java/org/briarproject/briar/android/util/UiUtils.java b/briar-android/src/main/java/org/briarproject/briar/android/util/UiUtils.java
index 7d2e898eb0..57788d4f1a 100644
--- a/briar-android/src/main/java/org/briarproject/briar/android/util/UiUtils.java
+++ b/briar-android/src/main/java/org/briarproject/briar/android/util/UiUtils.java
@@ -22,7 +22,6 @@ import org.briarproject.bramble.api.contact.ContactId;
 import org.briarproject.briar.R;
 import org.briarproject.briar.android.view.ArticleMovementMethod;
 import org.briarproject.briar.android.widget.LinkDialogFragment;
-import org.briarproject.briar.util.HtmlUtils;
 
 import static android.text.format.DateUtils.DAY_IN_MILLIS;
 import static android.text.format.DateUtils.FORMAT_ABBREV_MONTH;
@@ -31,7 +30,6 @@ import static android.text.format.DateUtils.FORMAT_ABBREV_TIME;
 import static android.text.format.DateUtils.FORMAT_SHOW_DATE;
 import static android.text.format.DateUtils.MINUTE_IN_MILLIS;
 import static android.text.format.DateUtils.WEEK_IN_MILLIS;
-import static org.briarproject.briar.util.HtmlUtils.ARTICLE;
 
 public class UiUtils {
 
@@ -87,7 +85,7 @@ public class UiUtils {
 	}
 
 	public static Spanned getSpanned(String s) {
-		return Html.fromHtml(HtmlUtils.clean(s, ARTICLE));
+		return Html.fromHtml(s);
 	}
 
 	public static void makeLinksClickable(TextView v) {
-- 
GitLab