diff --git a/app/src/main/java/eu/faircode/email/HtmlHelper.java b/app/src/main/java/eu/faircode/email/HtmlHelper.java index aa23f2c4cf..d2acc91cd5 100644 --- a/app/src/main/java/eu/faircode/email/HtmlHelper.java +++ b/app/src/main/java/eu/faircode/email/HtmlHelper.java @@ -1491,7 +1491,7 @@ public class HtmlHelper { List hosts = new ArrayList<>(); for (Element img : document.select("img")) { String src = img.attr("src"); - if (!TextUtils.isEmpty(src) && !isTrackingPixel(img)) { + if (!TextUtils.isEmpty(src) && !isTrackingPixel(img, disconnect_images)) { Uri uri = Uri.parse(img.attr("src")); String host = uri.getHost(); if (host != null && !hosts.contains(host)) @@ -1525,8 +1525,7 @@ public class HtmlHelper { continue; } - if (isTrackingPixel(img) || - (disconnect_images && DisconnectBlacklist.isTracking(host))) { + if (isTrackingPixel(img, disconnect_images)) { img.attr("src", sb.toString()); img.attr("alt", context.getString(R.string.title_legend_tracking_pixel)); img.attr("height", "24"); @@ -1537,14 +1536,19 @@ public class HtmlHelper { } } - private static boolean isTrackingPixel(Element img) { + private static boolean isTrackingPixel(Element img, boolean disconnect_images) { String src = img.attr("src"); if (!TextUtils.isEmpty(src)) try { Uri uri = Uri.parse(src); String host = uri.getHost(); - if (!TextUtils.isEmpty(host) && TRACKING_HOSTS.contains(host)) - return true; + if (!TextUtils.isEmpty(host)) { + if (TRACKING_HOSTS.contains(host)) + return true; + if (disconnect_images && + DisconnectBlacklist.isTracking(host)) + return true; + } } catch (Throwable ex) { Log.w(ex); }