From 45de5e98c0ed36c041c18db4882780b1499b1d82 Mon Sep 17 00:00:00 2001 From: yan Date: Thu, 7 Sep 2017 16:56:10 +0000 Subject: [PATCH] Merge pull request #10836 from NejcZdovc/hotfix/#10829-adblock Fixes cache problem with private tabs for siteSettings --- app/common/cache/braverySettingsCache.js | 14 ++++++++++---- app/filtering.js | 5 +++-- 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/app/common/cache/braverySettingsCache.js b/app/common/cache/braverySettingsCache.js index afec1b9debf..5fba86050c4 100644 --- a/app/common/cache/braverySettingsCache.js +++ b/app/common/cache/braverySettingsCache.js @@ -12,12 +12,18 @@ const clearBraverySettingsCache = () => { currentBraverySettingsCache.clear() } -const getBraverySettingsCache = (url) => { - return currentBraverySettingsCache.get(url) +const getBraverySettingsCache = (url, isPrivate) => { + const key = generateKey(url, isPrivate) + return currentBraverySettingsCache.get(key) } -const updateBraverySettingsCache = (url, braverySettings) => { - currentBraverySettingsCache.set(url, braverySettings) +const updateBraverySettingsCache = (url, isPrivate, braverySettings) => { + const key = generateKey(url, isPrivate) + currentBraverySettingsCache.set(key, braverySettings) +} + +const generateKey = (url, isPrivate) => { + return `${url}|${isPrivate}` } module.exports = { diff --git a/app/filtering.js b/app/filtering.js index 48551c12fde..4cdbd412385 100644 --- a/app/filtering.js +++ b/app/filtering.js @@ -59,7 +59,7 @@ const registeredSessions = {} const permissionCallbacks = {} const getBraverySettingsForUrl = (url, appState, isPrivate) => { - const cachedBraverySettings = getBraverySettingsCache(url) + const cachedBraverySettings = getBraverySettingsCache(url, isPrivate) if (cachedBraverySettings) { return cachedBraverySettings } @@ -70,7 +70,8 @@ const getBraverySettingsForUrl = (url, appState, isPrivate) => { if (isPrivate && tempSettings) { braverySettings = siteSettings.activeSettings(tempSettings, appState, appConfig) } - updateBraverySettingsCache(url, braverySettings) + updateBraverySettingsCache(url, isPrivate, braverySettings) + return braverySettings }