From e48f68126d620bafe312a6caecc21a63612f8e69 Mon Sep 17 00:00:00 2001 From: ManeraKai Date: Tue, 12 Dec 2023 14:42:45 +0300 Subject: [PATCH] Fixed a bug that bypassses iframes in frontends pages https://github.com/libredirect/browser_extension/issues/866 --- src/assets/javascripts/services.js | 7 +++++-- src/pages/background/background.js | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/src/assets/javascripts/services.js b/src/assets/javascripts/services.js index 4649c8e3..fc97799a 100644 --- a/src/assets/javascripts/services.js +++ b/src/assets/javascripts/services.js @@ -104,7 +104,10 @@ function redirect(url, type, initiator, forceRedirection, incognito) { initiator && instanceList.includes(initiator.origin) - ) return "BYPASSTAB" + ) { + if (type != "main_frame") return null + else return "BYPASSTAB" + } randomInstance = utils.getRandomInstance(instanceList) if (config.services[service].frontends[frontend].localhost && options[service].instance == "localhost") { @@ -581,7 +584,7 @@ function redirect(url, type, initiator, forceRedirection, incognito) { const reg = /^([0-9]+)\.media\.tumblr\.com/.exec(url.hostname) // *.media.tumblr.com if (reg) return `${randomInstance}/tblr/media/${reg[1]}${url.pathname}${url.search}` - + const blogregex = /^(?:www\.)?([a-z\d-]+)\.tumblr\.com/.exec(url.hostname) // .tumblr.com if (blogregex) { const blog_name = blogregex[1]; diff --git a/src/pages/background/background.js b/src/pages/background/background.js index 4b8f1ca2..9057f64a 100644 --- a/src/pages/background/background.js +++ b/src/pages/background/background.js @@ -71,7 +71,7 @@ browser.webRequest.onBeforeRequest.addListener( if (tabIdRedirects[details.tabId] != false) tabIdRedirects[details.tabId] = false return null } - console.info("Redirecting", url.href, "=>", newUrl) + console.log("Redirecting", url.href, "=>", newUrl) return { redirectUrl: newUrl } } return null