From baef6153c35f918d05a8f74b6c403e393e72651c Mon Sep 17 00:00:00 2001 From: M66B Date: Thu, 23 Jun 2022 16:47:42 +0200 Subject: [PATCH] Process redirectUrl in links --- app/src/main/java/eu/faircode/email/UriHelper.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/app/src/main/java/eu/faircode/email/UriHelper.java b/app/src/main/java/eu/faircode/email/UriHelper.java index 4efb79c505..6a6e29900b 100644 --- a/app/src/main/java/eu/faircode/email/UriHelper.java +++ b/app/src/main/java/eu/faircode/email/UriHelper.java @@ -297,6 +297,18 @@ public class UriHelper { changed = (result != null); url = (result == null ? uri : result); + } else if (uri.getQueryParameter("redirectUrl") != null) { + // https://.../link-tracker?redirectUrl=&sig=...&iat=...&a=...&account=...&email=...&s=...&i=... + try { + byte[] bytes = Base64.decode(uri.getQueryParameter("redirectUrl"), 0); + String u = URLDecoder.decode(new String(bytes), StandardCharsets.UTF_8.name()); + Uri result = Uri.parse(u); + changed = (result != null); + url = (result == null ? uri : result); + } catch (Throwable ex) { + Log.i(ex); + url = uri; + } } else url = uri;