Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 56a6a0d98d8c40c2dbecc438a2954b8e3c0c6bfe
      
https://github.com/WebKit/WebKit/commit/56a6a0d98d8c40c2dbecc438a2954b8e3c0c6bfe
  Author: Alex Christensen <[email protected]>
  Date:   2025-10-22 (Wed, 22 Oct 2025)

  Changed paths:
    M Source/WTF/wtf/cocoa/RuntimeApplicationChecksCocoa.h
    M Source/WebKit/Shared/JavaScriptEvaluationResult.cpp

  Log Message:
  -----------
  Add SerializedScriptValue serialization check in JavaScriptEvaluationResult 
for old apps
https://bugs.webkit.org/show_bug.cgi?id=301306
rdar://162474048

Reviewed by Brady Eidson.

In 298898@main I replaced a roundtrip through SerializedScriptValue with a 
faster check of
allowed classes in SerializedScriptValue::deserializationBehavior that also 
paved the way
for the introduction of new types returned from JS that were not structured 
clonable,
such as _WKJSHandle and _WKSerializedNode.  Some of the subtleties of 
SerializedScriptValue
were not carried over, and as a result at least one app has a JSValue that is 
let through
the filter now but not before that change, causing it to crash.  To restore 
existing behavior
in this case, add the roundtrip back.  To keep _WKJSHandle and 
_WKSerializedNode possible,
and to avoid unnecessary performance cost, don't do the extra roundtrip with 
new apps.

* Source/WTF/wtf/cocoa/RuntimeApplicationChecksCocoa.h:
* Source/WebKit/Shared/JavaScriptEvaluationResult.cpp:
(WebKit::JavaScriptEvaluationResult::extract):

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to