Allow the use of quotes in `set-[local|session]-storage-item`

Related discussion:
https://github.com/uBlockOrigin/uAssets/issues/20630#issuecomment-1807260357
This commit is contained in:
Raymond Hill 2023-11-12 19:05:56 -05:00
parent b26d421a57
commit decafc5cbf
No known key found for this signature in database
GPG Key ID: 25E1490B761470C2
1 changed files with 7 additions and 4 deletions

View File

@ -848,10 +848,13 @@ function setLocalStorageItemFn(
value = (new Date()).toISOString(); value = (new Date()).toISOString();
} }
} else { } else {
if ( trustedValues.includes(value.toLowerCase()) === false ) { const normalized = value.toLowerCase();
if ( /^\d+$/.test(value) === false ) { return; } const match = /^("?)(.+)\1$/.exec(normalized);
value = parseInt(value, 10); const unquoted = match && match[2] || normalized;
if ( value > 32767 ) { return; } if ( trustedValues.includes(unquoted) === false ) {
if ( /^\d+$/.test(unquoted) === false ) { return; }
const integer = parseInt(unquoted, 10);
if ( integer > 32767 ) { return; }
} }
} }