⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Changeset 276218 in webkit


Ignore:
Timestamp:
Apr 17, 2021, 8:40:56 PM (5 years ago)
Author:
Chris Dumez
Message:

Use WebProcess::existingGPUProcessConnection() whenever possible
https://bugs.webkit.org/show_bug.cgi?id=224725

Reviewed by Darin Adler.

Use WebProcess::existingGPUProcessConnection() whenever possible, instead of WebProcess::ensureGPUProcessConnection().
This avoids relaunching the GPUProcess if it has already exited.

  • WebProcess/GPU/media/RemoteAudioHardwareListener.cpp:

(WebKit::RemoteAudioHardwareListener::~RemoteAudioHardwareListener):

  • WebProcess/GPU/webrtc/AudioMediaStreamTrackRenderer.cpp:

(WebKit::AudioMediaStreamTrackRenderer::~AudioMediaStreamTrackRenderer):

  • WebProcess/cocoa/RemoteRealtimeAudioSource.cpp:

(WebKit::RemoteRealtimeAudioSource::~RemoteRealtimeAudioSource):

  • WebProcess/cocoa/RemoteRealtimeVideoSource.cpp:

(WebKit::RemoteRealtimeVideoSource::~RemoteRealtimeVideoSource):

Location:
trunk/Source/WebKit
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebKit/ChangeLog

    r276214 r276218  
     12021-04-17  Chris Dumez  <cdumez@apple.com>
     2
     3        Use WebProcess::existingGPUProcessConnection() whenever possible
     4        https://bugs.webkit.org/show_bug.cgi?id=224725
     5
     6        Reviewed by Darin Adler.
     7
     8        Use WebProcess::existingGPUProcessConnection() whenever possible, instead of WebProcess::ensureGPUProcessConnection().
     9        This avoids relaunching the GPUProcess if it has already exited.
     10
     11        * WebProcess/GPU/media/RemoteAudioHardwareListener.cpp:
     12        (WebKit::RemoteAudioHardwareListener::~RemoteAudioHardwareListener):
     13        * WebProcess/GPU/webrtc/AudioMediaStreamTrackRenderer.cpp:
     14        (WebKit::AudioMediaStreamTrackRenderer::~AudioMediaStreamTrackRenderer):
     15        * WebProcess/cocoa/RemoteRealtimeAudioSource.cpp:
     16        (WebKit::RemoteRealtimeAudioSource::~RemoteRealtimeAudioSource):
     17        * WebProcess/cocoa/RemoteRealtimeVideoSource.cpp:
     18        (WebKit::RemoteRealtimeVideoSource::~RemoteRealtimeVideoSource):
     19
    1202021-04-17  Chris Dumez  <cdumez@apple.com>
    221
  • trunk/Source/WebKit/WebProcess/GPU/media/RemoteAudioHardwareListener.cpp

    r272709 r276218  
    5656RemoteAudioHardwareListener::~RemoteAudioHardwareListener()
    5757{
    58     auto& connection = WebProcess::singleton().ensureGPUProcessConnection();
    59     connection.messageReceiverMap().removeMessageReceiver(*this);
    60     connection.connection().send(Messages::GPUConnectionToWebProcess::ReleaseAudioHardwareListener(m_identifier), 0);
     58    if (auto* connection = WebProcess::singleton().existingGPUProcessConnection()) {
     59        connection->messageReceiverMap().removeMessageReceiver(*this);
     60        connection->connection().send(Messages::GPUConnectionToWebProcess::ReleaseAudioHardwareListener(m_identifier), 0);
     61    }
    6162}
    6263
  • trunk/Source/WebKit/WebProcess/GPU/webrtc/AudioMediaStreamTrackRenderer.cpp

    r272213 r276218  
    5454AudioMediaStreamTrackRenderer::~AudioMediaStreamTrackRenderer()
    5555{
    56     WebProcess::singleton().ensureGPUProcessConnection().removeClient(*this);
     56    if (auto* connection = WebProcess::singleton().existingGPUProcessConnection())
     57        connection->removeClient(*this);
    5758    m_connection->send(Messages::RemoteAudioMediaStreamTrackRendererManager::ReleaseRenderer { m_identifier }, 0);
    5859}
  • trunk/Source/WebKit/WebProcess/cocoa/RemoteRealtimeAudioSource.cpp

    r274174 r276218  
    8585RemoteRealtimeAudioSource::~RemoteRealtimeAudioSource()
    8686{
    87     if (m_proxy.shouldCaptureInGPUProcess())
    88         WebProcess::singleton().ensureGPUProcessConnection().removeClient(*this);
     87    if (m_proxy.shouldCaptureInGPUProcess()) {
     88        if (auto* connection = WebProcess::singleton().existingGPUProcessConnection())
     89            connection->removeClient(*this);
     90    }
    8991
    9092#if PLATFORM(IOS_FAMILY)
  • trunk/Source/WebKit/WebProcess/cocoa/RemoteRealtimeVideoSource.cpp

    r273892 r276218  
    9090RemoteRealtimeVideoSource::~RemoteRealtimeVideoSource()
    9191{
    92     if (m_proxy.shouldCaptureInGPUProcess())
    93         WebProcess::singleton().ensureGPUProcessConnection().removeClient(*this);
     92    if (m_proxy.shouldCaptureInGPUProcess()) {
     93        if (auto* connection = WebProcess::singleton().existingGPUProcessConnection())
     94            connection->removeClient(*this);
     95    }
    9496
    9597#if PLATFORM(IOS_FAMILY)
Note: See TracChangeset for help on using the changeset viewer.