From 3e1b4119173bd6d0577f9ad5000ee98d1b8d89df Mon Sep 17 00:00:00 2001 From: Atemu Date: Sat, 13 May 2023 15:09:56 +0200 Subject: [PATCH] RedirectFixActivity: only follow redirects with URL cleaning enabled Fixes https://github.com/tasomaniac/OpenLinkWith/issues/86 --- .../openwith/redirect/RedirectFixActivity.kt | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/redirect/src/main/kotlin/com/tasomaniac/openwith/redirect/RedirectFixActivity.kt b/redirect/src/main/kotlin/com/tasomaniac/openwith/redirect/RedirectFixActivity.kt index c4e0cb6f..5249ca2d 100644 --- a/redirect/src/main/kotlin/com/tasomaniac/openwith/redirect/RedirectFixActivity.kt +++ b/redirect/src/main/kotlin/com/tasomaniac/openwith/redirect/RedirectFixActivity.kt @@ -23,6 +23,7 @@ class RedirectFixActivity : DaggerAppCompatActivity() { @Inject lateinit var redirectFixer: RedirectFixer @Inject lateinit var urlFix: UrlFix @Inject lateinit var schedulingStrategy: SchedulingStrategy + @Inject lateinit var cleanUrlsPreferences: CleanUrlsPreferences private var disposable: Disposable? = null @@ -57,10 +58,15 @@ class RedirectFixActivity : DaggerAppCompatActivity() { } private val redirectTransformer = MaybeTransformer { source -> - source.flatMap { httpUrl -> - redirectFixer - .followRedirects(httpUrl) - .toMaybe() + if (cleanUrlsPreferences.isEnabled) { + source.flatMap { httpUrl -> + redirectFixer + .followRedirects(httpUrl) + .toMaybe() + } + } else { + // Identity; do nothing + source } }