From b7441bb9c0954eb595cc6b3462e3b018ca6cebac Mon Sep 17 00:00:00 2001 From: Raymond Hill Date: Mon, 9 Dec 2024 08:05:47 -0500 Subject: [PATCH] Fix regression in `set-constant`scriptlet Regression from https://github.com/gorhill/uBlock/commit/3417fe3d5d --- platform/mv3/extension/js/debug.js | 3 ++- platform/mv3/extension/js/ruleset-manager.js | 15 ++++++++++----- src/js/resources/set-constant.js | 1 - 3 files changed, 12 insertions(+), 7 deletions(-) diff --git a/platform/mv3/extension/js/debug.js b/platform/mv3/extension/js/debug.js index 0a6ecaffe..4a0d54d81 100644 --- a/platform/mv3/extension/js/debug.js +++ b/platform/mv3/extension/js/debug.js @@ -20,6 +20,7 @@ */ import { dnr } from './ext.js'; +import { getDynamicRules } from './ext-compat.js'; /******************************************************************************/ @@ -53,7 +54,7 @@ const getRuleset = async rulesetId => { } let rules; if ( rulesetId === dnr.DYNAMIC_RULESET_ID ) { - rules = await dnr.getDynamicRules().catch(( ) => undefined); + rules = await getDynamicRules().catch(( ) => undefined); } else { const response = await fetch(`/rulesets/main/${rulesetId}.json`).catch(( ) => undefined); if ( response === undefined ) { return; } diff --git a/platform/mv3/extension/js/ruleset-manager.js b/platform/mv3/extension/js/ruleset-manager.js index 04bfb3b6f..ca8f1239b 100644 --- a/platform/mv3/extension/js/ruleset-manager.js +++ b/platform/mv3/extension/js/ruleset-manager.js @@ -26,6 +26,11 @@ import { runtime, } from './ext.js'; +import { + getDynamicRules, + getSessionRules, +} from './ext-compat.js'; + import { localRead, localRemove, localWrite, sessionRead, sessionRemove, sessionWrite, @@ -363,8 +368,8 @@ async function commitStrictBlockRules() { beforePermanentRules, beforeTemporaryRules, ] = await Promise.all([ - dnr.getDynamicRules({ ruleIds: [ STRICTBLOCK_BASE_RULE_ID ] }), - dnr.getSessionRules({ ruleIds: [ STRICTBLOCK_BASE_RULE_ID ] }), + getDynamicRules({ ruleIds: [ STRICTBLOCK_BASE_RULE_ID ] }), + getSessionRules({ ruleIds: [ STRICTBLOCK_BASE_RULE_ID ] }), ]); if ( beforePermanentRules?.length ) { ubolLog(`Remove 1 DNR dynamic strictblock rule`); @@ -422,11 +427,11 @@ async function updateDynamicRules() { dynamicRuleIds, sessionRuleIds, ] = await Promise.all([ - dnr.getDynamicRules().then(rules => + getDynamicRules().then(rules => rules.map(rule => rule.id) .filter(id => id < TRUSTED_DIRECTIVE_BASE_RULE_ID) ), - dnr.getSessionRules().then(rules => rules.map(rule => rule.id)), + getSessionRules().then(rules => rules.map(rule => rule.id)), updateRegexRules(dynamicRules), updateRemoveparamRules(dynamicRules), updateRedirectRules(dynamicRules), @@ -475,7 +480,7 @@ async function updateDynamicRules() { /******************************************************************************/ async function filteringModesToDNR(modes) { - const trustedRules = await dnr.getDynamicRules({ + const trustedRules = await getDynamicRules({ ruleIds: [ TRUSTED_DIRECTIVE_BASE_RULE_ID+0 ], }); const trustedRule = trustedRules.length !== 0 && trustedRules[0] || undefined; diff --git a/src/js/resources/set-constant.js b/src/js/resources/set-constant.js index 66584fb81..127f27bbb 100644 --- a/src/js/resources/set-constant.js +++ b/src/js/resources/set-constant.js @@ -61,7 +61,6 @@ export function validateConstantFn(trusted, raw, extraArgs = {}) { } else if ( raw.startsWith('{') && raw.endsWith('}') ) { try { value = safe.JSON_parse(raw).value; } catch(ex) { return; } } - return raw; } else { return; }