Prerequisites
I tried to reproduce the issue when...
Description
const Req = new XMLHttpRequest()
Req.open('OPTIONS', 'https://example.com')
Req.send()
const CleanReq = new XMLHttpRequest()
const Properties = ['status', 'statusText', 'readyState', 'response', 'responseURL', 'responseXML', 'setRequestHeader']
Properties.forEach(Key => {
// 'call' indicates Function.prototype.call
console.log(`Object.prototype.hasOwnProperty.call(Req, ${Key})`, Object.prototype.hasOwnProperty.call(Req, Key))
console.log(`Compares XMLHttpReqeust.prototype with clean one ${Key}`, Req[Key] === CleanReq[Key])
})
Related to uBlockOrigin/uAssets#34177 and #4089
A specific URL where the issue occurs.
`https://chzzk.naver.com/video/14745879` (should be logged in with a Naver account)
Steps to Reproduce
- Add
example.com##+js(trusted-suppress-native-method, Function.prototype.call, ' |"setRequestHeader"', 'abort')
- Visit
https://example.com
- Execute the provided Typescript snippet into DevTool
- Boom!
Expected behavior
No too much recursion error
Troubleshooting information
uBlock Origin: 1.73.0
Firefox: 155
filterset (summary):
network: 183066
cosmetic: 46530
scriptlet: 34820
html: 3780
listset (total-discarded, last-updated):
added:
KOR-1: 4749-86, 1h.36m
default:
user-filters: 0-0, never
ublock-filters: 53938-72, 1h.36m
ublock-badware: 10189-17, 1h.36m
ublock-privacy: 4110-2, 1m Δ
ublock-unbreak: 2865-1, 1h.36m
ublock-quick-fixes: 501-13, 43m Δ
easylist: 85926-139, 43m Δ
easyprivacy: 56385-43, 43m Δ
urlhaus-1: 47560-6, 1h.36m
plowe-0: 3526-1044, 6d.20h.12m
filterset (user): [empty]
userSettings:
userFiltersTrusted: true
hiddenSettings: [none]
supportStats:
allReadyAfter: 510 ms
maxAssetCacheWait: 283 ms
cacheBackend: indexedDB
Prerequisites
I tried to reproduce the issue when...
Description
Related to uBlockOrigin/uAssets#34177 and #4089
A specific URL where the issue occurs.
Steps to Reproduce
example.com##+js(trusted-suppress-native-method, Function.prototype.call, ' |"setRequestHeader"', 'abort')https://example.comExpected behavior
No
too much recursionerrorTroubleshooting information