Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: b8a88485f970d507fe4c215a4bb9cac8131e98a1
https://github.com/WebKit/WebKit/commit/b8a88485f970d507fe4c215a4bb9cac8131e98a1
Author: Yusuke Suzuki <[email protected]>
Date: 2026-04-16 (Thu, 16 Apr 2026)
Changed paths:
M JSTests/stress/module-loader-object-prototype-then-no-promise-tamper.js
M JSTests/stress/module-loader-promise-then-reassigned-same-value.js
M JSTests/stress/module-loader-promise-then-tampered-no-deps.js
M JSTests/stress/module-loader-promise-then-tampered.js
A JSTests/stress/module-loader-security-deep-chain-tampered.js
A JSTests/stress/module-loader-security-defineproperty-then.js
A JSTests/stress/module-loader-security-failure-tampered.js
A JSTests/stress/module-loader-security-proxy-then.js
A JSTests/stress/module-loader-security-reimport-tampered.js
A JSTests/stress/module-loader-security-thenable-namespace-tampered.js
A JSTests/stress/module-loader-security-thenable-namespace.js
A JSTests/stress/module-loader-security-tla-tampered-then.js
A JSTests/stress/resources/module-loader-security-deep-a.js
A JSTests/stress/resources/module-loader-security-deep-b.js
A JSTests/stress/resources/module-loader-security-deep-c.js
A
JSTests/stress/resources/module-loader-security-thenable-namespace-module.js
A JSTests/stress/resources/module-loader-security-tla-module.js
M Source/JavaScriptCore/runtime/JSPromise.cpp
Log Message:
-----------
[JSC] Add a bit more module loader tests for "then" tampering
https://bugs.webkit.org/show_bug.cgi?id=312419
rdar://174871382
Reviewed by Yijia Huang.
A bit adding more tests to ensure that tampered "then" does not affect
on the module loader. Also, fixing `isDefinitelyNonThenable` for
namespace object.
* JSTests/stress/module-loader-object-prototype-then-no-promise-tamper.js:
(import.string_appeared_here.then):
* JSTests/stress/module-loader-promise-then-reassigned-same-value.js:
* JSTests/stress/module-loader-promise-then-tampered-no-deps.js:
* JSTests/stress/module-loader-promise-then-tampered.js:
* JSTests/stress/module-loader-security-deep-chain-tampered.js: Added.
(fail):
(isInternalType):
(Promise.prototype.then):
* JSTests/stress/module-loader-security-defineproperty-then.js: Added.
(fail):
(isInternalType):
* JSTests/stress/module-loader-security-failure-tampered.js: Added.
(fail):
(isInternalType):
(Promise.prototype.then):
* JSTests/stress/module-loader-security-proxy-then.js: Added.
(fail):
(isInternalType):
(apply):
* JSTests/stress/module-loader-security-reimport-tampered.js: Added.
(fail):
(isInternalType):
(Promise.prototype.then):
* JSTests/stress/module-loader-security-thenable-namespace-tampered.js: Added.
(fail):
(isInternalType):
(Promise.prototype.then):
* JSTests/stress/module-loader-security-thenable-namespace.js: Added.
(fail):
* JSTests/stress/module-loader-security-tla-tampered-then.js: Added.
(fail):
(isInternalType):
(Promise.prototype.then):
* JSTests/stress/resources/module-loader-security-deep-a.js: Added.
* JSTests/stress/resources/module-loader-security-deep-b.js: Added.
* JSTests/stress/resources/module-loader-security-deep-c.js: Added.
* JSTests/stress/resources/module-loader-security-thenable-namespace-module.js:
Added.
(export.then):
* JSTests/stress/resources/module-loader-security-tla-module.js: Added.
* Source/JavaScriptCore/runtime/JSPromise.cpp:
(JSC::isDefinitelyNonThenable):
Canonical link: https://commits.webkit.org/311378@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications