[webkit-changes] [WebKit/WebKit] 814028: Crash returning non-string results in scripting.ex...

Timothy Hatcher noreply at github.com
Wed Jan 10 18:52:43 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 814028b389f8a6d2150fb632bda456dc6552f51f
      https://github.com/WebKit/WebKit/commit/814028b389f8a6d2150fb632bda456dc6552f51f
  Author: Timothy Hatcher <timothy at apple.com>
  Date:   2024-01-10 (Wed, 10 Jan 2024)

  Changed paths:
    M Source/WebKit/Shared/Extensions/WebExtensionDynamicScripts.serialization.in
    M Source/WebKit/Shared/Extensions/WebExtensionScriptInjectionResultParameters.h
    M Source/WebKit/UIProcess/Extensions/Cocoa/WebExtensionDynamicScriptsCocoa.mm
    M Source/WebKit/WebProcess/Extensions/API/Cocoa/WebExtensionAPIScriptingCocoa.mm
    M Tools/TestWebKitAPI/Tests/WebKitCocoa/WKWebExtensionAPIScripting.mm
    M Tools/TestWebKitAPI/Tests/WebKitCocoa/WKWebExtensionAPITabs.mm

  Log Message:
  -----------
  Crash returning non-string results in scripting.executeScript and tabs.executeScript.
https://webkit.org/b/267376
rdar://119334188

Reviewed by Brian Weinstein.

Treat the result of scripting.executeScript and tabs.executeScript as a JSON-serializable
value and encode and parse it as needed. Added new tests that confirms this works.

* Source/WebKit/Shared/Extensions/WebExtensionDynamicScripts.serialization.in:
* Source/WebKit/Shared/Extensions/WebExtensionScriptInjectionResultParameters.h:
* Source/WebKit/UIProcess/Extensions/Cocoa/WebExtensionDynamicScriptsCocoa.mm:
(WebKit::WebExtensionDynamicScripts::toInjectionResultParameters):
* Source/WebKit/WebProcess/Extensions/API/Cocoa/WebExtensionAPIScriptingCocoa.mm:
(WebKit::toWebAPI):
* Tools/TestWebKitAPI/Tests/WebKitCocoa/WKWebExtensionAPIScripting.mm:
(TestWebKitAPI::TEST):
* Tools/TestWebKitAPI/Tests/WebKitCocoa/WKWebExtensionAPITabs.mm:
(TestWebKitAPI::TEST):

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




More information about the webkit-changes mailing list