[webkit-changes] [WebKit/WebKit] 3c544f: [JSC] Add assertions for MarkedArgumentBuffer size

Yusuke Suzuki noreply at github.com
Fri Sep 16 14:49:32 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 3c544f1bec3e4dc368374a6562ba52a0a19d009b
      https://github.com/WebKit/WebKit/commit/3c544f1bec3e4dc368374a6562ba52a0a19d009b
  Author: Yusuke Suzuki <ysuzuki at apple.com>
  Date:   2022-09-16 (Fri, 16 Sep 2022)

  Changed paths:
    A JSTests/stress/shadow-realm-arguments.js
    M Source/JavaScriptCore/API/JSAPIGlobalObject.mm
    M Source/JavaScriptCore/runtime/JSModuleLoader.cpp
    M Source/JavaScriptCore/runtime/JSPromise.cpp
    M Source/JavaScriptCore/runtime/JSRemoteFunction.cpp
    M Source/JavaScriptCore/runtime/TemporalCalendarPrototype.cpp
    M Source/JavaScriptCore/runtime/VM.cpp
    M Source/JavaScriptCore/tools/JSDollarVM.cpp
    M Source/JavaScriptCore/wasm/WasmOperations.cpp
    M Source/WebCore/Modules/webaudio/AudioWorkletProcessor.cpp
    M Source/WebCore/bindings/js/JSDOMMapLike.cpp
    M Source/WebCore/bindings/js/JSDOMPromise.cpp
    M Source/WebCore/bindings/js/JSDOMSetLike.cpp
    M Source/WebCore/bindings/js/ReadableStreamDefaultController.cpp
    M Source/WebCore/bindings/js/ScriptController.cpp

  Log Message:
  -----------
  [JSC] Add assertions for MarkedArgumentBuffer size
https://bugs.webkit.org/show_bug.cgi?id=245286
<rdar://99272310>

Reviewed by Alexey Shvayka.

1. Add MarkedArgumentBuffer size assertions to places with fixed-sized MarkedArgumentBuffer arguments.
2. Suppress warning in JSRemoteFunction.cpp when we return in the middle of MarkedArgumentBuffer construction due to different exception.
   In this case, we do not need to check since we don't use constructed MarkedArgumentBuffer.

* Source/JavaScriptCore/API/JSAPIGlobalObject.mm:
(JSC::JSAPIGlobalObject::moduleLoaderFetch):
* Source/JavaScriptCore/runtime/JSModuleLoader.cpp:
(JSC::JSModuleLoader::dependencyKeysIfEvaluated):
* Source/JavaScriptCore/runtime/JSPromise.cpp:
(JSC::JSPromise::resolvedPromise):
* Source/JavaScriptCore/runtime/JSRemoteFunction.cpp:
(JSC::JSC_DEFINE_HOST_FUNCTION):
* Source/JavaScriptCore/runtime/TemporalCalendarPrototype.cpp:
(JSC::JSC_DEFINE_HOST_FUNCTION):
* Source/JavaScriptCore/runtime/VM.cpp:
(JSC::VM::callPromiseRejectionCallback):
* Source/JavaScriptCore/tools/JSDollarVM.cpp:
(JSC::JSC_DEFINE_HOST_FUNCTION):
* Source/JavaScriptCore/wasm/WasmOperations.cpp:
(JSC::Wasm::JSC_DEFINE_JIT_OPERATION):
* Source/WebCore/Modules/webaudio/AudioWorkletProcessor.cpp:
(WebCore::AudioWorkletProcessor::process):
* Source/WebCore/bindings/js/JSDOMMapLike.cpp:
(WebCore::setToBackingMap):
* Source/WebCore/bindings/js/JSDOMPromise.cpp:
(WebCore::DOMPromise::whenPromiseIsSettled):
* Source/WebCore/bindings/js/JSDOMSetLike.cpp:
(WebCore::addToBackingSet):
* Source/WebCore/bindings/js/ReadableStreamDefaultController.cpp:
(WebCore::ReadableStreamDefaultController::close):
(WebCore::ReadableStreamDefaultController::error):
(WebCore::ReadableStreamDefaultController::enqueue):
* Source/WebCore/bindings/js/ScriptController.cpp:
(WebCore::ScriptController::callInWorld):
(WebCore::ScriptController::executeAsynchronousUserAgentScriptInWorld):

Canonical link: https://commits.webkit.org/254571@main




More information about the webkit-changes mailing list