Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 71b34966f4fbbb0e2c7bbf5132c4645a0ef67e90
https://github.com/WebKit/WebKit/commit/71b34966f4fbbb0e2c7bbf5132c4645a0ef67e90
Author: Lauro Moura <[email protected]>
Date: 2025-04-25 (Fri, 25 Apr 2025)
Changed paths:
M Source/WebDriver/WebDriverService.cpp
M Source/WebDriver/WebDriverService.h
M Source/WebDriver/WebSocketServer.cpp
M Source/WebDriver/WebSocketServer.h
M Source/WebDriver/soup/WebSocketServerSoup.cpp
Log Message:
-----------
[WebDriver][BiDi] Assertion in RefCountedAndCanMakeWeakPtr<WebSocketServer>
destructor
https://bugs.webkit.org/show_bug.cgi?id=291925
Reviewed by BJ Burg and Carlos Garcia Campos.
Make WebDriverService hold the WebSocketServer in a Ref, as the server
implements RefCountedAndCanMakeWeakPtr.
This commit also removes the member of WebSocketServer that used to hold
the WebDriverService, as it was just used in
`WebSocketServer::session(...)`. This method was changed to return the
session id associated to that connection, so we don't have to pass the
current session anymore.
Combined changes:
* Source/WebDriver/WebDriverService.cpp:
(WebDriver::WebDriverService::WebDriverService): Update server
constructor call.
(WebDriver::WebDriverService::run): Fix pointer usage.
(WebDriver::WebDriverService::acceptHandshake): Ditto and update method
call.
(WebDriver::WebDriverService::handleMessage): Ditto and cleanup.
(WebDriver::WebDriverService::newSession): Fix pointer usage.
(WebDriver::WebDriverService::createSession): Ditto.
(WebDriver::WebDriverService::deleteSession): Ditto.
(WebDriver::WebDriverService::clientDisconnected): Ditto.
(WebDriver::WebDriverService::onBrowserTerminated): Ditto.
* Source/WebDriver/WebDriverService.h: Fix m_bidiServer type.
* Source/WebDriver/WebSocketServer.cpp:
(WebDriver::WebSocketServer::WebSocketServer): Update constructor call.
(WebDriver::WebSocketServer::sessionID const): Added.
(WebDriver::WebSocketServer::session): Deleted.
* Source/WebDriver/WebSocketServer.h: Remove m_bidiService and make
constructor private.
(WebDriver::WebSocketServer::create): Added.
* Source/WebDriver/soup/WebSocketServerSoup.cpp:
(WebDriver::WebSocketServer::disconnect): Checks and disconnect the
signal handlers.
(WebDriver::WebSocketServer::disconnectSession): Ditto.
Canonical link: https://commits.webkit.org/294135@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