tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

commit 991223d67804acc5d1c81631898fae77669ccbe3
parent 1d5fa889464d90596340823d9b57f1d7b2b13307
Author: scottdowne <sdowne@mozilla.com>
Date:   Fri,  5 Dec 2025 19:58:12 +0000

Bug 2004398 - Dedupe frecency boosted against both sponsored and organic top sites r=home-newtab-reviewers,nbarrett

Differential Revision: https://phabricator.services.mozilla.com/D275248

Diffstat:
Mbrowser/extensions/newtab/lib/TopSitesFeed.sys.mjs | 13++++++++++---
1 file changed, 10 insertions(+), 3 deletions(-)

diff --git a/browser/extensions/newtab/lib/TopSitesFeed.sys.mjs b/browser/extensions/newtab/lib/TopSitesFeed.sys.mjs @@ -1417,13 +1417,17 @@ export class TopSitesFeed { * @param {Array} sponsors - List of sponsor domain objects * @returns {Array} Filtered list of sponsors not in organic topsites */ - dedupeSponsorsAgainstTopsites(sponsors) { + dedupeSponsorsAgainstTopsites(sponsors = []) { const topsites = new Set( (this._linksWithDefaults || []) .filter(site => site.type !== "frecency-boost") .map(site => { try { - return new URL(site.url).hostname; + return ( + site.label?.toLowerCase() || + site.hostname || + lazy.NewTabUtils.shortURL(site) + ); } catch (e) { return null; } @@ -1431,7 +1435,10 @@ export class TopSitesFeed { .filter(Boolean) ); - return sponsors.filter(({ hostname }) => !topsites.has(hostname)); + return sponsors.filter( + ({ hostname }) => + !topsites.has(lazy.NewTabUtils.shortURL({ url: `https://${hostname}` })) + ); } /**