Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 2eef61ccd0ff60ed893d67393c97a935fc9ff643
      
https://github.com/WebKit/WebKit/commit/2eef61ccd0ff60ed893d67393c97a935fc9ff643
  Author: Basuke Suzuki <[email protected]>
  Date:   2025-08-13 (Wed, 13 Aug 2025)

  Changed paths:
    M LayoutTests/http/wpt/navigation-api/transition-promises-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/navigation-api/focus-reset/basic-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/navigation-api/focus-reset/focus-reset-timing-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/navigation-api/ordering-and-transition/anchor-download-intercept-reject_currententrychange-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/navigation-api/ordering-and-transition/anchor-download-intercept-reject_no-currententrychange-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/navigation-api/ordering-and-transition/back-same-document-intercept-reject_currententrychange-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/navigation-api/ordering-and-transition/back-same-document-intercept-reject_no-currententrychange-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/navigation-api/ordering-and-transition/location-href-intercept-reject_currententrychange-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/navigation-api/ordering-and-transition/location-href-intercept-reject_no-currententrychange-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/navigation-api/ordering-and-transition/navigate-same-document-intercept-reject_currententrychange-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/navigation-api/ordering-and-transition/navigate-same-document-intercept-reject_no-currententrychange-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/navigation-api/ordering-and-transition/reload-intercept-reject_currententrychange-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/navigation-api/ordering-and-transition/reload-intercept-reject_no-currententrychange-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/navigation-api/ordering-and-transition/transition-finished-mark-as-handled-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/navigation-api/scroll-behavior/after-transition-reject-expected.txt
    M LayoutTests/platform/ios/TestExpectations
    M LayoutTests/platform/mac-wk2/TestExpectations
    M Source/JavaScriptCore/runtime/JSPromise.cpp
    M Source/WebCore/bindings/js/JSDOMPromise.cpp
    M Source/WebCore/bindings/js/JSDOMPromise.h
    M Source/WebCore/page/Navigation.cpp

  Log Message:
  -----------
  [Navigation API] Fix unhandled promise rejection in intercept handlers.
https://bugs.webkit.org/show_bug.cgi?id=296936
rdar://158138764

Reviewed by Yusuke Suzuki.

Many of the tests in wpt/navigation-api/ produces "Unhandled Promise Rejection: 
XXX" errors in expected files.

For promises returned from handler() during intercept(), the errors are 
reported as navigateerror event. So we
can mark them as handled safely.

Also need to modify JSPromise to allow marking as handled for already resolved 
function to allow marking
Promise.reject() as handled for testing code.

* LayoutTests/http/wpt/navigation-api/transition-promises-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/navigation-api/focus-reset/basic-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/navigation-api/focus-reset/focus-reset-timing-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/navigation-api/ordering-and-transition/anchor-download-intercept-reject_currententrychange-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/navigation-api/ordering-and-transition/anchor-download-intercept-reject_no-currententrychange-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/navigation-api/ordering-and-transition/back-same-document-intercept-reject_currententrychange-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/navigation-api/ordering-and-transition/back-same-document-intercept-reject_no-currententrychange-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/navigation-api/ordering-and-transition/location-href-intercept-reject_currententrychange-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/navigation-api/ordering-and-transition/location-href-intercept-reject_no-currententrychange-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/navigation-api/ordering-and-transition/navigate-same-document-intercept-reject_currententrychange-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/navigation-api/ordering-and-transition/navigate-same-document-intercept-reject_no-currententrychange-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/navigation-api/ordering-and-transition/reload-intercept-reject_currententrychange-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/navigation-api/ordering-and-transition/reload-intercept-reject_no-currententrychange-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/navigation-api/ordering-and-transition/transition-finished-mark-as-handled-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/navigation-api/scroll-behavior/after-transition-reject-expected.txt:
* LayoutTests/platform/ios/TestExpectations:
* LayoutTests/platform/mac-wk2/TestExpectations:
* Source/JavaScriptCore/runtime/JSPromise.cpp:
(JSC::JSPromise::markAsHandled):
(JSC::JSPromise::rejectAsHandled):
* Source/WebCore/bindings/js/JSDOMPromise.cpp:
(WebCore::DOMPromise::markAsHandled):
* Source/WebCore/bindings/js/JSDOMPromise.h:
* Source/WebCore/page/Navigation.cpp:
(WebCore::Navigation::innerDispatchNavigateEvent):

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to