diff --git a/src/assets/javascripts/helpers/reddit.js b/src/assets/javascripts/helpers/reddit.js index a21b328..53b309a 100644 --- a/src/assets/javascripts/helpers/reddit.js +++ b/src/assets/javascripts/helpers/reddit.js @@ -4,6 +4,7 @@ const targets = [ "new.reddit.com", "amp.reddit.com", "i.redd.it", + "redd.it", ]; const redirects = [ // libreddit: privacy w/ modern UI diff --git a/src/pages/background/background.js b/src/pages/background/background.js index 87bc8dd..4fa3693 100644 --- a/src/pages/background/background.js +++ b/src/pages/background/background.js @@ -482,6 +482,21 @@ function redirectReddit(url, initiator, type) { } else { return null; } + } else if (url.host === "redd.it") { + if ( + redditInstance.includes("teddit") && + !url.pathname.match(/^\/+[^\/]+\/+[^\/]/) + ) { + // As of 2021-04-22, redirects for teddit redd.it/foo links don't work. + // It appears that adding "/comments" as a prefix works, so manually add + // that prefix if it is missing. Even though redd.it/comments/foo links + // don't seem to work or exist, guard against affecting those kinds of + // paths. + // + // Note the difference between redd.it/comments/foo (doesn't work) and + // teddit.net/comments/foo (works). + return `${redditInstance}/comments${url.pathname}${url.search}`; + } } return `${redditInstance}${url.pathname}${url.search}`; }