Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 06770f9707f593227e9665625b6aacef6da9a5d1
      
https://github.com/WebKit/WebKit/commit/06770f9707f593227e9665625b6aacef6da9a5d1
  Author: Alexey Proskuryakov <[email protected]>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M Source/WebKit/WebProcess/Automation/WebAutomationSessionProxy.cpp
    M Source/WebKit/WebProcess/Automation/WebAutomationSessionProxy.h
    M Source/WebKit/WebProcess/WebProcess.cpp

  Log Message:
  -----------
  Multiple "Completion handler should always be called" assertion failures when 
running WebDriver tests
https://bugs.webkit.org/show_bug.cgi?id=319654
rdar://182460158

Reviewed by BJ Burg.

WebDriver doesn't expect that all completion handlers in WebContent process are 
called.
First, create_dialog() async script in fixtures_http.py code never invokes the 
callback in
the first place. Second, another teardown code path 
(willDestroyGlobalObjectForFrame)
already cleans up all outstanding callbacks.

So, mirror this behavior in session teardown.

* Source/WebKit/WebProcess/Automation/WebAutomationSessionProxy.cpp:
(WebKit::WebAutomationSessionProxy::cancelPendingEvaluateJavaScriptCallbacks):
* Source/WebKit/WebProcess/Automation/WebAutomationSessionProxy.h:
* Source/WebKit/WebProcess/WebProcess.cpp:
(WebKit::WebProcess::destroyAutomationSessionProxy):

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



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

Reply via email to