[webkit-changes] [WebKit/WebKit] 9e6935: [IsDeprecatedWeakRefSmartPointerException] Remove ...

Rupin Mittal noreply at github.com
Thu Oct 10 21:04:41 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 9e6935faed8654391f8d9d3d4ff78cef98a91bac
      https://github.com/WebKit/WebKit/commit/9e6935faed8654391f8d9d3d4ff78cef98a91bac
  Author: Rupin Mittal <rupin at apple.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M Source/WebKit/WebProcess/Network/webrtc/LibWebRTCNetworkManager.cpp
    M Source/WebKit/WebProcess/Network/webrtc/LibWebRTCNetworkManager.h
    M Source/WebKit/WebProcess/Network/webrtc/LibWebRTCProvider.cpp
    M Source/WebKit/WebProcess/Network/webrtc/LibWebRTCSocket.h
    M Source/WebKit/WebProcess/Network/webrtc/LibWebRTCSocketFactory.cpp
    M Source/WebKit/WebProcess/Network/webrtc/LibWebRTCSocketFactory.h
    M Source/WebKit/WebProcess/Network/webrtc/WebRTCMonitor.cpp
    M Source/WebKit/WebProcess/Network/webrtc/WebRTCMonitor.h

  Log Message:
  -----------
  [IsDeprecatedWeakRefSmartPointerException] Remove exception from WebRTCMonitor and LibWebRTCSocket
https://bugs.webkit.org/show_bug.cgi?id=281115
rdar://137565108

Reviewed by Chris Dumez and Ryosuke Niwa.

We remove IsDeprecatedWeakRefSmartPointerException by making WebRTCMonitor ref-counted.

In the case of LibWebRTCSocket, we cannot make it ref-counted because
LibWebRTCSocketFactory::createUdpSocket and LibWebRTCSocketFactory::createClientTcpSocket
return a raw pointer of LibWebRTCSocket's base class type rtc::AsyncPacketSocket, which
could be destroyed--completely ignoring the ref-counting of LibWebRTCSocket. So we remove
the exception by making LibWebRTCSocket able to be a CheckedPtr.

* Source/WebKit/WebProcess/Network/webrtc/LibWebRTCNetworkManager.cpp:
(WebKit::LibWebRTCNetworkManager::getOrCreate):
(WebKit::LibWebRTCNetworkManager::signalUsedInterface):
* Source/WebKit/WebProcess/Network/webrtc/LibWebRTCNetworkManager.h:
* Source/WebKit/WebProcess/Network/webrtc/LibWebRTCProvider.cpp:
(WebKit::LibWebRTCProvider::createPeerConnection):
* Source/WebKit/WebProcess/Network/webrtc/LibWebRTCSocket.h:
* Source/WebKit/WebProcess/Network/webrtc/LibWebRTCSocketFactory.cpp:
(WebKit::LibWebRTCSocketFactory::forSocketInGroup):
* Source/WebKit/WebProcess/Network/webrtc/LibWebRTCSocketFactory.h:
* Source/WebKit/WebProcess/Network/webrtc/WebRTCMonitor.cpp:
(WebKit::WebRTCMonitor::networksChanged):
(WebKit::WebRTCMonitor::networkProcessCrashed):
* Source/WebKit/WebProcess/Network/webrtc/WebRTCMonitor.h:

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



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


More information about the webkit-changes mailing list