From 3a2bb625190488b18c1486e51a1dc8fa465c14b4 Mon Sep 17 00:00:00 2001 From: Raymond Hill Date: Sat, 14 Jun 2025 09:26:27 -0400 Subject: [PATCH] Improve `trusted-set-cookie` scriptlet Ability to use regex value for `, domain, value` vararg. Related discussion: https://github.com/uBlockOrigin/uAssets/commit/afc6ff52ff2ac886b55cbd4702149f61d33900ec#commitcomment-160035082 --- src/js/resources/cookie.js | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/js/resources/cookie.js b/src/js/resources/cookie.js index 517fa9c04..d96f4ab46 100644 --- a/src/js/resources/cookie.js +++ b/src/js/resources/cookie.js @@ -135,7 +135,15 @@ export function setCookieFn( if ( trusted ) { if ( options.domain ) { - cookieParts.push(`; domain=${options.domain}`); + let domain = options.domain; + if ( /^\/.+\//.test(domain) ) { + const reDomain = new RegExp(domain.slice(1, -1)); + const match = reDomain.exec(document.location.hostname); + domain = match ? match[0] : undefined; + } + if ( domain ) { + cookieParts.push(`; domain=${domain}`); + } } cookieParts.push('; Secure'); } else if ( /^__(Host|Secure)-/.test(name) ) {