Changeset 249647 in webkit


Ignore:
Timestamp:
Sep 9, 2019 10:02:14 AM (5 years ago)
Author:
youenn@apple.com
Message:

Remove ServiceWorkerProcessProxy
https://bugs.webkit.org/show_bug.cgi?id=201506

Reviewed by Chris Dumez.

Instead of using a specific ServiceWorkerProcessProxy, move the logic directly in WebProcessProxy.
This will allow us in the future to run a service worker in a process that already runs a web page,
thus saving the need to spin off a new process.

This patch adds a new WebProcessProxy::createForServiceWorkers method instead of creating a
ServiceWorkerProcessProxy. The behavior is then similar: a process running a service worker cannot run a page.

  • Sources.txt:
  • UIProcess/API/Cocoa/WKWebsiteDataStore.mm:

(-[WKWebsiteDataStore _hasRegisteredServiceWorker]):

  • UIProcess/BackgroundProcessResponsivenessTimer.cpp:

(WebKit::BackgroundProcessResponsivenessTimer::shouldBeActive const):

  • UIProcess/Network/NetworkProcessProxy.cpp:

(WebKit::NetworkProcessProxy::openNetworkProcessConnection):

  • UIProcess/ServiceWorkerProcessProxy.cpp: Removed.
  • UIProcess/ServiceWorkerProcessProxy.h: Removed.
  • UIProcess/WebProcessPool.cpp:

(WebKit::WebProcessPool::establishWorkerContextConnectionToNetworkProcess):
(WebKit::WebProcessPool::disconnectProcess):
(WebKit::WebProcessPool::processForRegistrableDomain):
(WebKit::WebProcessPool::createWebPage):
(WebKit::WebProcessPool::updateServiceWorkerUserAgent):
(WebKit::WebProcessPool::mayHaveRegisteredServiceWorkers):
(WebKit::WebProcessPool::updateProcessAssertions):
(WebKit::WebProcessPool::isServiceWorkerPageID const):

  • UIProcess/WebProcessPool.h:
  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::createForServiceWorkers):
(WebKit::WebProcessProxy::getLaunchOptions):
(WebKit::WebProcessProxy::didBecomeUnresponsive):
(WebKit::WebProcessProxy::canBeAddedToWebProcessCache const):
(WebKit::WebProcessProxy::didSetAssertionState):
(WebKit::WebProcessProxy::didExceedCPULimit):
(WebKit::WebProcessProxy::establishServiceWorkerContext):
(WebKit::WebProcessProxy::setServiceWorkerUserAgent):
(WebKit::WebProcessProxy::updateServiceWorkerPreferencesStore):

  • UIProcess/WebProcessProxy.h:

(WebKit::WebProcessProxy::isRunningServiceWorkers const):
(WebKit::WebProcessProxy::hasServiceWorkerPageProxy):

  • UIProcess/glib/WebProcessPoolGLib.cpp:

(WebKit::WebProcessPool::platformInitializeWebProcess):

  • WebKit.xcodeproj/project.pbxproj:
Location:
trunk/Source/WebKit
Files:
2 deleted
11 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebKit/ChangeLog

    r249640 r249647  
     12019-09-09  Youenn Fablet  <youenn@apple.com>
     2
     3        Remove ServiceWorkerProcessProxy
     4        https://bugs.webkit.org/show_bug.cgi?id=201506
     5
     6        Reviewed by Chris Dumez.
     7
     8        Instead of using a specific ServiceWorkerProcessProxy, move the logic directly in WebProcessProxy.
     9        This will allow us in the future to run a service worker in a process that already runs a web page,
     10        thus saving the need to spin off a new process.
     11
     12        This patch adds a new WebProcessProxy::createForServiceWorkers method instead of creating a
     13        ServiceWorkerProcessProxy. The behavior is then similar: a process running a service worker cannot run a page.
     14
     15        * Sources.txt:
     16        * UIProcess/API/Cocoa/WKWebsiteDataStore.mm:
     17        (-[WKWebsiteDataStore _hasRegisteredServiceWorker]):
     18        * UIProcess/BackgroundProcessResponsivenessTimer.cpp:
     19        (WebKit::BackgroundProcessResponsivenessTimer::shouldBeActive const):
     20        * UIProcess/Network/NetworkProcessProxy.cpp:
     21        (WebKit::NetworkProcessProxy::openNetworkProcessConnection):
     22        * UIProcess/ServiceWorkerProcessProxy.cpp: Removed.
     23        * UIProcess/ServiceWorkerProcessProxy.h: Removed.
     24        * UIProcess/WebProcessPool.cpp:
     25        (WebKit::WebProcessPool::establishWorkerContextConnectionToNetworkProcess):
     26        (WebKit::WebProcessPool::disconnectProcess):
     27        (WebKit::WebProcessPool::processForRegistrableDomain):
     28        (WebKit::WebProcessPool::createWebPage):
     29        (WebKit::WebProcessPool::updateServiceWorkerUserAgent):
     30        (WebKit::WebProcessPool::mayHaveRegisteredServiceWorkers):
     31        (WebKit::WebProcessPool::updateProcessAssertions):
     32        (WebKit::WebProcessPool::isServiceWorkerPageID const):
     33        * UIProcess/WebProcessPool.h:
     34        * UIProcess/WebProcessProxy.cpp:
     35        (WebKit::WebProcessProxy::createForServiceWorkers):
     36        (WebKit::WebProcessProxy::getLaunchOptions):
     37        (WebKit::WebProcessProxy::didBecomeUnresponsive):
     38        (WebKit::WebProcessProxy::canBeAddedToWebProcessCache const):
     39        (WebKit::WebProcessProxy::didSetAssertionState):
     40        (WebKit::WebProcessProxy::didExceedCPULimit):
     41        (WebKit::WebProcessProxy::establishServiceWorkerContext):
     42        (WebKit::WebProcessProxy::setServiceWorkerUserAgent):
     43        (WebKit::WebProcessProxy::updateServiceWorkerPreferencesStore):
     44        * UIProcess/WebProcessProxy.h:
     45        (WebKit::WebProcessProxy::isRunningServiceWorkers const):
     46        (WebKit::WebProcessProxy::hasServiceWorkerPageProxy):
     47        * UIProcess/glib/WebProcessPoolGLib.cpp:
     48        (WebKit::WebProcessPool::platformInitializeWebProcess):
     49        * WebKit.xcodeproj/project.pbxproj:
     50
    1512019-09-09  Youenn Fablet  <youenn@apple.com>
    252
  • trunk/Source/WebKit/Sources.txt

    r249637 r249647  
    251251UIProcess/RemoteWebInspectorProxy.cpp
    252252UIProcess/ResponsivenessTimer.cpp
    253 UIProcess/ServiceWorkerProcessProxy.cpp
    254253UIProcess/StatisticsRequest.cpp
    255254UIProcess/SuspendedPageProxy.cpp
  • trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebsiteDataStore.mm

    r249275 r249647  
    4242#import "_WKWebsiteDataStoreDelegate.h"
    4343#import <WebCore/Credential.h>
    44 #import <WebKit/ServiceWorkerProcessProxy.h>
     44#import <WebCore/RegistrationDatabase.h>
    4545#import <wtf/BlockPtr.h>
    4646#import <wtf/URL.h>
     
    579579- (bool)_hasRegisteredServiceWorker
    580580{
    581     return WebKit::ServiceWorkerProcessProxy::hasRegisteredServiceWorkers(_websiteDataStore->websiteDataStore().serviceWorkerRegistrationDirectory());
     581    return FileSystem::fileExists(WebCore::serviceWorkerRegistrationDatabaseFilename(_websiteDataStore->websiteDataStore().serviceWorkerRegistrationDirectory()));
    582582}
    583583
  • trunk/Source/WebKit/UIProcess/BackgroundProcessResponsivenessTimer.cpp

    r248121 r249647  
    136136#if !PLATFORM(IOS_FAMILY)
    137137    // Service worker process are always in the background.
    138     if (m_webProcessProxy.isServiceWorkerProcess())
     138    if (m_webProcessProxy.isRunningServiceWorkers())
    139139        return true;
    140140    return !m_webProcessProxy.visiblePageCount() && m_webProcessProxy.pageCount();
  • trunk/Source/WebKit/UIProcess/Network/NetworkProcessProxy.cpp

    r249501 r249647  
    146146    RegistrableDomain registrableDomain;
    147147#if ENABLE(SERVICE_WORKER)
    148     if (is<ServiceWorkerProcessProxy>(webProcessProxy)) {
     148    if (webProcessProxy.isRunningServiceWorkers()) {
    149149        isServiceWorkerProcess = true;
    150         registrableDomain = downcast<ServiceWorkerProcessProxy>(webProcessProxy).registrableDomain();
     150        registrableDomain = webProcessProxy.registrableDomain();
    151151    }
    152152#endif
  • trunk/Source/WebKit/UIProcess/WebProcessPool.cpp

    r249622 r249647  
    5050#include "PluginProcessManager.h"
    5151#include "SandboxExtension.h"
    52 #include "ServiceWorkerProcessProxy.h"
    5352#include "StatisticsData.h"
    5453#include "TextChecker.h"
     
    8786#include <WebCore/ProcessIdentifier.h>
    8887#include <WebCore/ProcessWarming.h>
     88#include <WebCore/RegistrationDatabase.h>
    8989#include <WebCore/ResourceRequest.h>
    9090#include <WebCore/RuntimeApplicationChecks.h>
     
    710710        sendToAllProcesses(Messages::WebProcess::RegisterServiceWorkerClients { });
    711711
    712     auto serviceWorkerProcessProxy = ServiceWorkerProcessProxy::create(*this, registrableDomain, *websiteDataStore);
    713     m_serviceWorkerProcesses.add(WTFMove(registrableDomain), serviceWorkerProcessProxy.ptr());
     712    auto serviceWorkerProcessProxy = WebProcessProxy::createForServiceWorkers(*this, WTFMove(registrableDomain), *websiteDataStore);
     713    m_serviceWorkerProcesses.add(serviceWorkerProcessProxy->registrableDomain(), serviceWorkerProcessProxy.ptr());
    714714
    715715    updateProcessAssertions();
     
    719719    m_processes.append(WTFMove(serviceWorkerProcessProxy));
    720720
    721     serviceWorkerProcessProxyPtr->start(m_serviceWorkerPreferences ? m_serviceWorkerPreferences.value() : m_defaultPageGroup->preferences().store(), sessionID);
     721    serviceWorkerProcessProxyPtr->establishServiceWorkerContext(m_serviceWorkerPreferences ? m_serviceWorkerPreferences.value() : m_defaultPageGroup->preferences().store(), sessionID.valueOr(PAL::SessionID::defaultSessionID()));
    722722    if (!m_serviceWorkerUserAgent.isNull())
    723         serviceWorkerProcessProxyPtr->setUserAgent(m_serviceWorkerUserAgent);
     723        serviceWorkerProcessProxyPtr->setServiceWorkerUserAgent(m_serviceWorkerUserAgent);
    724724}
    725725#endif
     
    11271127
    11281128#if ENABLE(SERVICE_WORKER)
    1129     if (is<ServiceWorkerProcessProxy>(*process)) {
    1130         auto* removedProcess = m_serviceWorkerProcesses.take(downcast<ServiceWorkerProcessProxy>(*process).registrableDomain());
     1129    if (process->isRunningServiceWorkers()) {
     1130        auto* removedProcess = m_serviceWorkerProcesses.take(process->registrableDomain());
    11311131        ASSERT_UNUSED(removedProcess, removedProcess == process);
    11321132        updateProcessAssertions();
     
    11881188            continue;
    11891189#if ENABLE(SERVICE_WORKER)
    1190         if (is<ServiceWorkerProcessProxy>(*process))
     1190        if (process->isRunningServiceWorkers())
    11911191            continue;
    11921192#endif
     
    12421242
    12431243#if ENABLE(SERVICE_WORKER)
    1244     ASSERT(!is<ServiceWorkerProcessProxy>(*process));
     1244    ASSERT(!process->isRunningServiceWorkers());
    12451245
    12461246    if (!m_serviceWorkerPreferences) {
    12471247        m_serviceWorkerPreferences = page->preferencesStore();
    12481248        for (auto* serviceWorkerProcess : m_serviceWorkerProcesses.values())
    1249             serviceWorkerProcess->updatePreferencesStore(*m_serviceWorkerPreferences);
     1249            serviceWorkerProcess->updateServiceWorkerPreferencesStore(*m_serviceWorkerPreferences);
    12501250    }
    12511251#endif
     
    12751275    m_serviceWorkerUserAgent = userAgent;
    12761276    for (auto* serviceWorkerProcess : m_serviceWorkerProcesses.values())
    1277         serviceWorkerProcess->setUserAgent(m_serviceWorkerUserAgent);
     1277        serviceWorkerProcess->setServiceWorkerUserAgent(m_serviceWorkerUserAgent);
    12781278}
    12791279
     
    12891289    return m_mayHaveRegisteredServiceWorkers.ensure(serviceWorkerRegistrationDirectory, [&] {
    12901290        // FIXME: Make this computation on a background thread.
    1291         return ServiceWorkerProcessProxy::hasRegisteredServiceWorkers(serviceWorkerRegistrationDirectory);
     1291        return FileSystem::fileExists(WebCore::serviceWorkerRegistrationDatabaseFilename(serviceWorkerRegistrationDirectory));
    12921292    }).iterator->value;
    12931293}
     
    21332133            // FIXME: We can do better than this once we have process per origin.
    21342134            for (auto* serviceWorkerProcess : m_serviceWorkerProcesses.values()) {
    2135                 auto& registrableDomain = serviceWorkerProcess->registrableDomain();
     2135                auto registrableDomain = serviceWorkerProcess->registrableDomain();
    21362136                if (!m_foregroundTokensForServiceWorkerProcesses.contains(registrableDomain))
    2137                     m_foregroundTokensForServiceWorkerProcesses.add(registrableDomain, serviceWorkerProcess->throttler().foregroundActivityToken());
     2137                    m_foregroundTokensForServiceWorkerProcesses.add(WTFMove(registrableDomain), serviceWorkerProcess->throttler().foregroundActivityToken());
    21382138            }
    21392139            m_backgroundTokensForServiceWorkerProcesses.clear();
     
    21432143            // FIXME: We can do better than this once we have process per origin.
    21442144            for (auto* serviceWorkerProcess : m_serviceWorkerProcesses.values()) {
    2145                 auto& registrableDomain = serviceWorkerProcess->registrableDomain();
     2145                auto registrableDomain = serviceWorkerProcess->registrableDomain();
    21462146                if (!m_backgroundTokensForServiceWorkerProcesses.contains(registrableDomain))
    2147                     m_backgroundTokensForServiceWorkerProcesses.add(registrableDomain, serviceWorkerProcess->throttler().backgroundActivityToken());
     2147                    m_backgroundTokensForServiceWorkerProcesses.add(WTFMove(registrableDomain), serviceWorkerProcess->throttler().backgroundActivityToken());
    21482148            }
    21492149            m_foregroundTokensForServiceWorkerProcesses.clear();
     
    21992199#if ENABLE(SERVICE_WORKER)
    22002200    // FIXME: This is inefficient.
    2201     for (auto* serviceWorkerProcess : m_serviceWorkerProcesses.values()) {
    2202         if (serviceWorkerProcess->webPageProxyID() == pageID)
    2203             return true;
    2204     }
     2201    return WTF::anyOf(m_serviceWorkerProcesses.values(), [pageID](auto* process) {
     2202        return process->hasServiceWorkerPageProxy(pageID);
     2203    });
    22052204#endif
    22062205    return false;
  • trunk/Source/WebKit/UIProcess/WebProcessPool.h

    r249589 r249647  
    3939#include "PluginInfoStore.h"
    4040#include "ProcessThrottler.h"
    41 #include "ServiceWorkerProcessProxy.h"
    4241#include "StatisticsRequest.h"
    4342#include "VisitedLinkStore.h"
     
    101100class UIGamepad;
    102101class PerActivityStateCPUUsageSampler;
    103 class ServiceWorkerProcessProxy;
    104102class SuspendedPageProxy;
    105103class WebAutomationSession;
     
    383381#if ENABLE(SERVICE_WORKER)
    384382    void establishWorkerContextConnectionToNetworkProcess(NetworkProcessProxy&, WebCore::RegistrableDomain&&, Optional<PAL::SessionID>);
    385     const HashMap<WebCore::RegistrableDomain, ServiceWorkerProcessProxy*>& serviceWorkerProxies() const { return m_serviceWorkerProcesses; }
     383    const HashMap<WebCore::RegistrableDomain, WebProcessProxy*>& serviceWorkerProxies() const { return m_serviceWorkerProcesses; }
    386384    void setAllowsAnySSLCertificateForServiceWorker(bool allows) { m_allowsAnySSLCertificateForServiceWorker = allows; }
    387385    bool allowsAnySSLCertificateForServiceWorker() const { return m_allowsAnySSLCertificateForServiceWorker; }
     
    621619    WebProcessProxy* m_processWithPageCache { nullptr };
    622620#if ENABLE(SERVICE_WORKER)
    623     HashMap<WebCore::RegistrableDomain, ServiceWorkerProcessProxy*> m_serviceWorkerProcesses;
     621    HashMap<WebCore::RegistrableDomain, WebProcessProxy*> m_serviceWorkerProcesses;
    624622    bool m_waitingForWorkerContextProcessConnection { false };
    625623    bool m_allowsAnySSLCertificateForServiceWorker { false };
  • trunk/Source/WebKit/UIProcess/WebProcessProxy.cpp

    r249501 r249647  
    5050#include "WebProcessPool.h"
    5151#include "WebProcessProxyMessages.h"
     52#include "WebSWContextManagerConnectionMessages.h"
    5253#include "WebUserContentControllerProxy.h"
    5354#include "WebsiteData.h"
     
    134135}
    135136
     137Ref<WebProcessProxy> WebProcessProxy::createForServiceWorkers(WebProcessPool& processPool, RegistrableDomain&& registrableDomain, WebsiteDataStore& websiteDataStore)
     138{
     139    auto proxy = adoptRef(*new WebProcessProxy(processPool, &websiteDataStore, IsPrewarmed::No));
     140    proxy->m_registrableDomain = WTFMove(registrableDomain);
     141    proxy->m_serviceWorkerInformation = ServiceWorkerInformation { WebPageProxyIdentifier::generate(), PageIdentifier::generate() };
     142    proxy->connect();
     143    return proxy;
     144}
     145
    136146WebProcessProxy::WebProcessProxy(WebProcessPool& processPool, WebsiteDataStore* websiteDataStore, IsPrewarmed isPrewarmed)
    137147    : AuxiliaryProcessProxy(processPool.alwaysRunsAtBackgroundPriority())
     
    278288        launchOptions.shouldMakeProcessLaunchFailForTesting = true;
    279289    }
     290
     291    if (m_serviceWorkerInformation) {
     292        launchOptions.extraInitializationData.add("service-worker-process"_s, "1"_s);
     293        launchOptions.extraInitializationData.add("registrable-domain"_s, m_registrableDomain->string());
     294    }
    280295}
    281296
     
    752767        callback(isWebProcessResponsive);
    753768
    754     // If the service worker process becomes unresponsive, kill it ourselves since there are no native clients to do it.
    755     if (isServiceWorkerProcess()) {
    756         RELEASE_LOG_ERROR(PerformanceLogging, "%p - WebProcessProxy::didBecomeUnresponsive() Terminating Service Worker process with pid %d because it is unresponsive", this, processIdentifier());
     769    // If the web process becomes unresponsive and only runs service workers, kill it ourselves since there are no native clients to do it.
     770    if (isRunningServiceWorkers() && m_pageMap.isEmpty()) {
     771        RELEASE_LOG_ERROR(PerformanceLogging, "%p - WebProcessProxy::didBecomeUnresponsive() Terminating service worker-only web process with pid %d because it is unresponsive", this, processIdentifier());
    757772        terminate();
    758773    }
     
    887902bool WebProcessProxy::canBeAddedToWebProcessCache() const
    888903{
    889     if (isServiceWorkerProcess())
     904    if (isRunningServiceWorkers())
    890905        return false;
    891906
     
    12031218{
    12041219#if PLATFORM(IOS_FAMILY)
    1205     if (isServiceWorkerProcess())
     1220    if (isRunningServiceWorkers())
    12061221        return;
    12071222
     
    13791394        return;
    13801395
    1381     if (isServiceWorkerProcess())
    1382         RELEASE_LOG_ERROR(PerformanceLogging, "%p - WebProcessProxy::didExceedCPULimit() Terminating Service Worker process with pid %d that has exceeded the background CPU limit", this, processIdentifier());
    1383     else
    1384         RELEASE_LOG_ERROR(PerformanceLogging, "%p - WebProcessProxy::didExceedCPULimit() Terminating background WebProcess with pid %d that has exceeded the background CPU limit", this, processIdentifier());
     1396    RELEASE_LOG_ERROR(PerformanceLogging, "%p - WebProcessProxy::didExceedCPULimit() Terminating background WebProcess with pid %d that has exceeded the background CPU limit", this, processIdentifier());
    13851397    logDiagnosticMessageForResourceLimitTermination(DiagnosticLoggingKeys::exceededBackgroundCPULimitKey());
    13861398    requestTermination(ProcessTerminationReason::ExceededCPULimit);
     
    14811493#endif
    14821494
     1495#if ENABLE(SERVICE_WORKER)
     1496void WebProcessProxy::establishServiceWorkerContext(const WebPreferencesStore& store, PAL::SessionID sessionID)
     1497{
     1498    send(Messages::WebProcess::EstablishWorkerContextConnectionToNetworkProcess { processPool().defaultPageGroup().pageGroupID(), m_serviceWorkerInformation->serviceWorkerPageProxyID, m_serviceWorkerInformation->serviceWorkerPageID, store, sessionID }, 0);
     1499}
     1500
     1501void WebProcessProxy::setServiceWorkerUserAgent(const String& userAgent)
     1502{
     1503    ASSERT(m_serviceWorkerInformation);
     1504    send(Messages::WebSWContextManagerConnection::SetUserAgent { userAgent }, 0);
     1505}
     1506
     1507void WebProcessProxy::updateServiceWorkerPreferencesStore(const WebPreferencesStore& store)
     1508{
     1509    ASSERT(m_serviceWorkerInformation);
     1510    send(Messages::WebSWContextManagerConnection::UpdatePreferencesStore { store }, 0);
     1511}
     1512#endif
     1513
    14831514} // namespace WebKit
    14841515
  • trunk/Source/WebKit/UIProcess/WebProcessProxy.h

    r249501 r249647  
    8383struct WebNavigationDataStore;
    8484struct WebPageCreationParameters;
     85struct WebPreferencesStore;
    8586struct WebsiteData;
    8687
     
    110111
    111112    static Ref<WebProcessProxy> create(WebProcessPool&, WebsiteDataStore*, IsPrewarmed, ShouldLaunchProcess = ShouldLaunchProcess::Yes);
     113    static Ref<WebProcessProxy> createForServiceWorkers(WebProcessPool&, WebCore::RegistrableDomain&&, WebsiteDataStore&);
     114
    112115    ~WebProcessProxy();
    113116
     
    150153    void activePagesDomainsForTesting(CompletionHandler<void(Vector<String>&&)>&&); // This is what is reported to ActivityMonitor.
    151154
    152     virtual bool isServiceWorkerProcess() const { return false; }
     155    bool isRunningServiceWorkers() const { return !!m_serviceWorkerInformation; }
    153156
    154157    void didCreateWebPageInProcess(WebCore::PageIdentifier);
     
    309312    void ref() final { ThreadSafeRefCounted::ref(); }
    310313    void deref() final { ThreadSafeRefCounted::deref(); }
     314
     315#if ENABLE(SERVICE_WORKER)
     316    void establishServiceWorkerContext(const WebPreferencesStore&, PAL::SessionID);
     317    void startForServiceWorkers(const WebPreferencesStore&, PAL::SessionID);
     318    void setServiceWorkerUserAgent(const String&);
     319    void updateServiceWorkerPreferencesStore(const WebPreferencesStore&);
     320    bool hasServiceWorkerPageProxy(WebPageProxyIdentifier pageProxyID) { return m_serviceWorkerInformation && m_serviceWorkerInformation->serviceWorkerPageProxyID == pageProxyID; }
     321#endif
    311322
    312323protected:
     
    477488    MediaCaptureSandboxExtensions m_mediaCaptureSandboxExtensions { SandboxExtensionType::None };
    478489#endif
     490
     491    struct ServiceWorkerInformation {
     492        WebPageProxyIdentifier serviceWorkerPageProxyID;
     493        WebCore::PageIdentifier serviceWorkerPageID;
     494    };
     495    Optional<ServiceWorkerInformation> m_serviceWorkerInformation;
    479496};
    480497
  • trunk/Source/WebKit/UIProcess/glib/WebProcessPoolGLib.cpp

    r246955 r249647  
    104104{
    105105#if PLATFORM(WPE)
    106     parameters.isServiceWorkerProcess = process.isServiceWorkerProcess();
     106    parameters.isServiceWorkerProcess = process.isRunningServiceWorkers();
    107107
    108108    if (!parameters.isServiceWorkerProcess) {
  • trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj

    r249637 r249647  
    880880                414DD37920BF43F5006959FB /* com.cisco.webex.plugin.gpc64.sb in Resources */ = {isa = PBXBuildFile; fileRef = 414DD37820BF43EA006959FB /* com.cisco.webex.plugin.gpc64.sb */; };
    881881                414DD37A20BF49A5006959FB /* com.cisco.webex.plugin.gpc64.sb in Copy Plug-in Sandbox Profiles */ = {isa = PBXBuildFile; fileRef = 414DD37820BF43EA006959FB /* com.cisco.webex.plugin.gpc64.sb */; };
    882                 414DEDD71F9EDDE50047C40D /* ServiceWorkerProcessProxy.h in Headers */ = {isa = PBXBuildFile; fileRef = 414DEDD51F9EDDDF0047C40D /* ServiceWorkerProcessProxy.h */; };
    883882                4157E4B020E2ECDF00A6C0D7 /* com.google.o1dbrowserplugin.sb in Copy Plug-in Sandbox Profiles */ = {isa = PBXBuildFile; fileRef = 4157E4AF20E2EC9800A6C0D7 /* com.google.o1dbrowserplugin.sb */; };
    884883                4176901422FDD41B00B1576D /* NetworkRTCProvider.mm in Sources */ = {isa = PBXBuildFile; fileRef = 4176901322FDD41B00B1576D /* NetworkRTCProvider.mm */; };
     
    31383137                4143751B20EAEA1E00FAD06C /* cn.microdone.cmb.safari.sb */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = cn.microdone.cmb.safari.sb; sourceTree = "<group>"; };
    31393138                414DD37820BF43EA006959FB /* com.cisco.webex.plugin.gpc64.sb */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = com.cisco.webex.plugin.gpc64.sb; sourceTree = "<group>"; };
    3140                 414DEDD51F9EDDDF0047C40D /* ServiceWorkerProcessProxy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ServiceWorkerProcessProxy.h; sourceTree = "<group>"; };
    3141                 414DEDD61F9EDDE00047C40D /* ServiceWorkerProcessProxy.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ServiceWorkerProcessProxy.cpp; sourceTree = "<group>"; };
    31423139                41518535222704F5005430C6 /* ServiceWorkerFetchTask.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ServiceWorkerFetchTask.h; sourceTree = "<group>"; };
    31433140                41518536222704F6005430C6 /* ServiceWorkerFetchTask.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ServiceWorkerFetchTask.cpp; sourceTree = "<group>"; };
     
    77787775                                1A30066C1110F4F70031937C /* ResponsivenessTimer.h */,
    77797776                                5CA98549210BEB5A0057EB6B /* SafeBrowsingWarning.h */,
    7780                                 414DEDD61F9EDDE00047C40D /* ServiceWorkerProcessProxy.cpp */,
    7781                                 414DEDD51F9EDDDF0047C40D /* ServiceWorkerProcessProxy.h */,
    77827777                                51A4D5A816CAC4FF000E615E /* StatisticsRequest.cpp */,
    77837778                                514BDED216C98EDD00E4E25E /* StatisticsRequest.h */,
     
    97479742                                570AB8F320AE3BD700B8BE87 /* SecKeyProxyStore.h in Headers */,
    97489743                                514D9F5719119D35000063A7 /* ServicesController.h in Headers */,
    9749                                 414DEDD71F9EDDE50047C40D /* ServiceWorkerProcessProxy.h in Headers */,
    97509744                                1AFDE65A1954A42B00C48FFA /* SessionState.h in Headers */,
    97519745                                1A002D49196B345D00B9AD44 /* SessionStateCoding.h in Headers */,
Note: See TracChangeset for help on using the changeset viewer.