Changeset 185736 in webkit


Ignore:
Timestamp:
Jun 18, 2015 10:59:43 PM (9 years ago)
Author:
Carlos Garcia Campos
Message:

Do not store configuration parameters twice in WebProcessPool
https://bugs.webkit.org/show_bug.cgi?id=146102

Reviewed by Sam Weinig.

Since we are copying the given WebProcessPoolConfiguration and
keeping it as a member, we don't need to keep an additional copy
of its contents as extra members. This also prevents
inconsistencies between the values in the configuration and the
members when any of them are modified by WebProcessPool API.

  • UIProcess/API/APIProcessPoolConfiguration.h: Return a const

reference instead of a temporary in methods returning a String.

  • UIProcess/Cocoa/WebProcessPoolCocoa.mm:

(WebKit::WebProcessPool::updateProcessSuppressionState):
(WebKit::WebProcessPool::platformInitializeWebProcess):

  • UIProcess/WebProcessPool.cpp:

(WebKit::WebProcessPool::setProcessModel):
(WebKit::WebProcessPool::setMaximumNumberOfProcesses):
(WebKit::WebProcessPool::networkingProcessConnection):
(WebKit::WebProcessPool::languageChanged):
(WebKit::WebProcessPool::setUsesNetworkProcess):
(WebKit::WebProcessPool::usesNetworkProcess):
(WebKit::WebProcessPool::ensureNetworkProcess):
(WebKit::WebProcessPool::ensureDatabaseProcess):
(WebKit::WebProcessPool::ensureSharedWebProcess):
(WebKit::WebProcessPool::createNewWebProcess):
(WebKit::WebProcessPool::warmInitialProcess):
(WebKit::WebProcessPool::disconnectProcess):
(WebKit::WebProcessPool::createNewWebProcessRespectingProcessCountLimit):
(WebKit::WebProcessPool::createWebPage):
(WebKit::WebProcessPool::postMessageToInjectedBundle):
(WebKit::WebProcessPool::setCanHandleHTTPSServerTrustEvaluation):
(WebKit::WebProcessPool::setCacheModel):
(WebKit::WebProcessPool::allowSpecificHTTPSCertificateForHost):
(WebKit::WebProcessPool::requestWebContentStatistics):
(WebKit::WebProcessPool::requestNetworkingStatistics):

  • UIProcess/WebProcessPool.h:

(WebKit::WebProcessPool::sendToNetworkingProcess):
(WebKit::WebProcessPool::sendToNetworkingProcessRelaunchingIfNecessary):
(WebKit::WebProcessPool::sendToAllProcessesRelaunchingThemIfNecessary):
(WebKit::WebProcessPool::sendToOneProcess):

  • UIProcess/gtk/WebProcessPoolGtk.cpp:

(WebKit::WebProcessPool::platformInitializeWebProcess):

Location:
trunk/Source/WebKit2
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebKit2/ChangeLog

    r185727 r185736  
     12015-06-18  Carlos Garcia Campos  <cgarcia@igalia.com>
     2
     3        Do not store configuration parameters twice in WebProcessPool
     4        https://bugs.webkit.org/show_bug.cgi?id=146102
     5
     6        Reviewed by Sam Weinig.
     7
     8        Since we are copying the given WebProcessPoolConfiguration and
     9        keeping it as a member, we don't need to keep an additional copy
     10        of its contents as extra members. This also prevents
     11        inconsistencies between the values in the configuration and the
     12        members when any of them are modified by WebProcessPool API.
     13
     14        * UIProcess/API/APIProcessPoolConfiguration.h: Return a const
     15        reference instead of a temporary in methods returning a String.
     16        * UIProcess/Cocoa/WebProcessPoolCocoa.mm:
     17        (WebKit::WebProcessPool::updateProcessSuppressionState):
     18        (WebKit::WebProcessPool::platformInitializeWebProcess):
     19        * UIProcess/WebProcessPool.cpp:
     20        (WebKit::WebProcessPool::setProcessModel):
     21        (WebKit::WebProcessPool::setMaximumNumberOfProcesses):
     22        (WebKit::WebProcessPool::networkingProcessConnection):
     23        (WebKit::WebProcessPool::languageChanged):
     24        (WebKit::WebProcessPool::setUsesNetworkProcess):
     25        (WebKit::WebProcessPool::usesNetworkProcess):
     26        (WebKit::WebProcessPool::ensureNetworkProcess):
     27        (WebKit::WebProcessPool::ensureDatabaseProcess):
     28        (WebKit::WebProcessPool::ensureSharedWebProcess):
     29        (WebKit::WebProcessPool::createNewWebProcess):
     30        (WebKit::WebProcessPool::warmInitialProcess):
     31        (WebKit::WebProcessPool::disconnectProcess):
     32        (WebKit::WebProcessPool::createNewWebProcessRespectingProcessCountLimit):
     33        (WebKit::WebProcessPool::createWebPage):
     34        (WebKit::WebProcessPool::postMessageToInjectedBundle):
     35        (WebKit::WebProcessPool::setCanHandleHTTPSServerTrustEvaluation):
     36        (WebKit::WebProcessPool::setCacheModel):
     37        (WebKit::WebProcessPool::allowSpecificHTTPSCertificateForHost):
     38        (WebKit::WebProcessPool::requestWebContentStatistics):
     39        (WebKit::WebProcessPool::requestNetworkingStatistics):
     40        * UIProcess/WebProcessPool.h:
     41        (WebKit::WebProcessPool::sendToNetworkingProcess):
     42        (WebKit::WebProcessPool::sendToNetworkingProcessRelaunchingIfNecessary):
     43        (WebKit::WebProcessPool::sendToAllProcessesRelaunchingThemIfNecessary):
     44        (WebKit::WebProcessPool::sendToOneProcess):
     45        * UIProcess/gtk/WebProcessPoolGtk.cpp:
     46        (WebKit::WebProcessPool::platformInitializeWebProcess):
     47
    1482015-06-18  Jon Lee  <jonlee@apple.com>
    249
  • trunk/Source/WebKit2/UIProcess/API/APIProcessPoolConfiguration.h

    r185262 r185736  
    6464    void setDiskCacheSizeOverride(int64_t size) { m_diskCacheSizeOverride = size; }
    6565
    66     WTF::String applicationCacheDirectory() const { return m_applicationCacheDirectory; }
     66    const WTF::String& applicationCacheDirectory() const { return m_applicationCacheDirectory; }
    6767    void setApplicationCacheDirectory(const WTF::String& applicationCacheDirectory) { m_applicationCacheDirectory = applicationCacheDirectory; }
    6868
    69     WTF::String diskCacheDirectory() const { return m_diskCacheDirectory; }
     69    const WTF::String& diskCacheDirectory() const { return m_diskCacheDirectory; }
    7070    void setDiskCacheDirectory(const WTF::String& diskCacheDirectory) { m_diskCacheDirectory = diskCacheDirectory; }
    7171
    72     WTF::String indexedDBDatabaseDirectory() const { return m_indexedDBDatabaseDirectory; }
     72    const WTF::String& indexedDBDatabaseDirectory() const { return m_indexedDBDatabaseDirectory; }
    7373    void setIndexedDBDatabaseDirectory(const WTF::String& indexedDBDatabaseDirectory) { m_indexedDBDatabaseDirectory = indexedDBDatabaseDirectory; }
    7474
    75     WTF::String injectedBundlePath() const { return m_injectedBundlePath; }
     75    const WTF::String& injectedBundlePath() const { return m_injectedBundlePath; }
    7676    void setInjectedBundlePath(const WTF::String& injectedBundlePath) { m_injectedBundlePath = injectedBundlePath; }
    7777
    78     WTF::String localStorageDirectory() const { return m_localStorageDirectory; }
     78    const WTF::String& localStorageDirectory() const { return m_localStorageDirectory; }
    7979    void setLocalStorageDirectory(const WTF::String& localStorageDirectory) { m_localStorageDirectory = localStorageDirectory; }
    8080
    81     WTF::String webSQLDatabaseDirectory() const { return m_webSQLDatabaseDirectory; }
     81    const WTF::String& webSQLDatabaseDirectory() const { return m_webSQLDatabaseDirectory; }
    8282    void setWebSQLDatabaseDirectory(const WTF::String& webSQLDatabaseDirectory) { m_webSQLDatabaseDirectory = webSQLDatabaseDirectory; }
    8383
    84     WTF::String mediaKeysStorageDirectory() const { return m_mediaKeysStorageDirectory; }
     84    const WTF::String& mediaKeysStorageDirectory() const { return m_mediaKeysStorageDirectory; }
    8585    void setMediaKeysStorageDirectory(const WTF::String& mediaKeysStorageDirectory) { m_mediaKeysStorageDirectory = mediaKeysStorageDirectory; }
    8686
  • trunk/Source/WebKit2/UIProcess/Cocoa/WebProcessPoolCocoa.mm

    r185374 r185736  
    119119{
    120120#if ENABLE(NETWORK_PROCESS)
    121     if (m_usesNetworkProcess && m_networkProcess)
     121    if (usesNetworkProcess() && m_networkProcess)
    122122        m_networkProcess->setProcessSuppressionEnabled(processSuppressionEnabled());
    123123#endif
     
    193193
    194194#if ENABLE(NETWORK_PROCESS)
    195     if (!m_usesNetworkProcess) {
     195    if (!usesNetworkProcess()) {
    196196#endif
    197197        for (const auto& scheme : globalURLSchemesWithCustomProtocolHandlers())
  • trunk/Source/WebKit2/UIProcess/WebProcessPool.cpp

    r185623 r185736  
    141141WebProcessPool::WebProcessPool(API::ProcessPoolConfiguration& configuration)
    142142    : m_configuration(configuration.copy())
    143     , m_processModel(m_configuration->processModel())
    144     , m_webProcessCountLimit(!m_configuration->maximumProcessCount() ? UINT_MAX : m_configuration->maximumProcessCount())
    145143    , m_haveInitialEmptyProcess(false)
    146144    , m_processWithPageCache(0)
    147145    , m_defaultPageGroup(WebPageGroup::createNonNull())
    148     , m_injectedBundlePath(m_configuration->injectedBundlePath())
    149146    , m_downloadClient(std::make_unique<API::DownloadClient>())
    150147    , m_historyClient(std::make_unique<API::LegacyContextHistoryClient>())
     
    154151    , m_alwaysUsesComplexTextCodePath(false)
    155152    , m_shouldUseFontSmoothing(true)
    156     , m_cacheModel(m_configuration->cacheModel())
    157     , m_diskCacheSizeOverride(m_configuration->diskCacheSizeOverride())
    158153    , m_memorySamplerEnabled(false)
    159154    , m_memorySamplerInterval(1400.0)
     
    162157    , m_initialHTTPCookieAcceptPolicy(HTTPCookieAcceptPolicyOnlyFromMainDocumentDomain)
    163158#endif
    164     , m_applicationCacheDirectory(configuration.applicationCacheDirectory())
    165     , m_indexedDBDatabaseDirectory(configuration.indexedDBDatabaseDirectory())
    166     , m_mediaKeysStorageDirectory(configuration.mediaKeysStorageDirectory())
    167     , m_webSQLDatabaseDirectory(configuration.webSQLDatabaseDirectory())
    168159    , m_shouldUseTestingNetworkSession(false)
    169160    , m_processTerminationEnabled(true)
    170161#if ENABLE(NETWORK_PROCESS)
    171162    , m_canHandleHTTPSServerTrustEvaluation(true)
    172     , m_usesNetworkProcess(m_configuration->useNetworkProcess())
    173163#endif
    174164#if USE(SOUP)
     
    305295        CRASH();
    306296
    307     m_processModel = processModel;
     297    m_configuration->setProcessModel(processModel);
    308298}
    309299
     
    314304        CRASH();
    315305
    316     if (maximumNumberOfProcesses == 0)
    317         m_webProcessCountLimit = UINT_MAX;
    318     else
    319         m_webProcessCountLimit = maximumNumberOfProcesses;
     306    m_configuration->setMaximumProcessCount(maximumNumberOfProcesses);
    320307}
    321308
    322309IPC::Connection* WebProcessPool::networkingProcessConnection()
    323310{
    324     switch (m_processModel) {
     311    switch (processModel()) {
    325312    case ProcessModelSharedSecondaryProcess:
    326313#if ENABLE(NETWORK_PROCESS)
    327         if (m_usesNetworkProcess)
     314        if (usesNetworkProcess())
    328315            return m_networkProcess->connection();
    329316#endif
     
    331318    case ProcessModelMultipleSecondaryProcesses:
    332319#if ENABLE(NETWORK_PROCESS)
    333         ASSERT(m_usesNetworkProcess);
     320        ASSERT(usesNetworkProcess());
    334321        return m_networkProcess->connection();
    335322#else
     
    350337    sendToAllProcesses(Messages::WebProcess::UserPreferredLanguagesChanged(userPreferredLanguages()));
    351338#if USE(SOUP) && ENABLE(NETWORK_PROCESS)
    352     if (m_usesNetworkProcess && m_networkProcess)
     339    if (usesNetworkProcess() && m_networkProcess)
    353340        m_networkProcess->send(Messages::NetworkProcess::UserPreferredLanguagesChanged(userPreferredLanguages()), 0);
    354341#endif
     
    368355{
    369356#if ENABLE(NETWORK_PROCESS)
    370     m_usesNetworkProcess = usesNetworkProcess;
     357    m_configuration->setUseNetworkProcess(usesNetworkProcess);
    371358#else
    372359    UNUSED_PARAM(usesNetworkProcess);
     
    377364{
    378365#if ENABLE(NETWORK_PROCESS)
    379     return m_usesNetworkProcess;
     366    return m_configuration->useNetworkProcess();
    380367#else
    381368    return false;
     
    395382    parameters.privateBrowsingEnabled = WebPreferences::anyPagesAreUsingPrivateBrowsing();
    396383
    397     parameters.cacheModel = m_cacheModel;
    398     parameters.diskCacheSizeOverride = m_diskCacheSizeOverride;
     384    parameters.cacheModel = cacheModel();
     385    parameters.diskCacheSizeOverride = m_configuration->diskCacheSizeOverride();
    399386    parameters.canHandleHTTPSServerTrustEvaluation = m_canHandleHTTPSServerTrustEvaluation;
    400387
     
    471458    m_databaseProcess = DatabaseProcessProxy::create(this);
    472459
    473     ASSERT(!m_indexedDBDatabaseDirectory.isEmpty());
     460    ASSERT(!m_configuration->indexedDBDatabaseDirectory().isEmpty());
    474461
    475462    // *********
     
    477464    // *********
    478465    DatabaseProcessCreationParameters parameters;
    479     parameters.indexedDatabaseDirectory = m_indexedDBDatabaseDirectory;
     466    parameters.indexedDatabaseDirectory = m_configuration->indexedDBDatabaseDirectory();
    480467
    481468    SandboxExtension::createHandleForReadWriteDirectory(parameters.indexedDatabaseDirectory, parameters.indexedDatabaseDirectoryExtensionHandle);
     
    572559WebProcessProxy& WebProcessPool::ensureSharedWebProcess()
    573560{
    574     ASSERT(m_processModel == ProcessModelSharedSecondaryProcess);
     561    ASSERT(processModel() == ProcessModelSharedSecondaryProcess);
    575562    if (m_processes.isEmpty())
    576563        createNewWebProcess();
     
    581568{
    582569#if ENABLE(NETWORK_PROCESS)
    583     if (m_usesNetworkProcess)
     570    if (usesNetworkProcess())
    584571        ensureNetworkProcess();
    585572#endif
     
    593580        SandboxExtension::createHandle(parameters.injectedBundlePath, SandboxExtension::ReadOnly, parameters.injectedBundlePathExtensionHandle);
    594581
    595     parameters.applicationCacheDirectory = m_applicationCacheDirectory;
     582    parameters.applicationCacheDirectory = m_configuration->applicationCacheDirectory();
    596583    if (!parameters.applicationCacheDirectory.isEmpty())
    597584        SandboxExtension::createHandleForReadWriteDirectory(parameters.applicationCacheDirectory, parameters.applicationCacheDirectoryExtensionHandle);
    598585
    599     parameters.webSQLDatabaseDirectory = m_webSQLDatabaseDirectory;
     586    parameters.webSQLDatabaseDirectory = m_configuration->webSQLDatabaseDirectory();
    600587    if (!parameters.webSQLDatabaseDirectory.isEmpty())
    601588        SandboxExtension::createHandleForReadWriteDirectory(parameters.webSQLDatabaseDirectory, parameters.webSQLDatabaseDirectoryExtensionHandle);
     
    619606#endif
    620607
    621     parameters.mediaKeyStorageDirectory = m_mediaKeysStorageDirectory;
     608    parameters.mediaKeyStorageDirectory = m_configuration->mediaKeysStorageDirectory();
    622609    if (!parameters.mediaKeyStorageDirectory.isEmpty())
    623610        SandboxExtension::createHandleForReadWriteDirectory(parameters.mediaKeyStorageDirectory, parameters.mediaKeyStorageDirectoryExtensionHandle);
     
    625612    parameters.shouldUseTestingNetworkSession = m_shouldUseTestingNetworkSession;
    626613
    627     parameters.cacheModel = m_cacheModel;
     614    parameters.cacheModel = cacheModel();
    628615    parameters.languages = userPreferredLanguages();
    629616
     
    647634    parameters.iconDatabaseEnabled = !iconDatabasePath().isEmpty();
    648635
    649     parameters.terminationTimeout = (m_processModel == ProcessModelSharedSecondaryProcess) ? sharedSecondaryProcessShutdownTimeout : 0;
     636    parameters.terminationTimeout = (processModel() == ProcessModelSharedSecondaryProcess) ? sharedSecondaryProcessShutdownTimeout : 0;
    650637
    651638    parameters.textCheckerState = TextChecker::state();
     
    661648
    662649#if ENABLE(NETWORK_PROCESS)
    663     parameters.usesNetworkProcess = m_usesNetworkProcess;
     650    parameters.usesNetworkProcess = usesNetworkProcess();
    664651#endif
    665652
     
    707694    m_processes.append(process.ptr());
    708695
    709     if (m_processModel == ProcessModelSharedSecondaryProcess) {
     696    if (processModel() == ProcessModelSharedSecondaryProcess) {
    710697        for (size_t i = 0; i != m_messagesToInjectedBundlePostedToEmptyContext.size(); ++i) {
    711698            auto& messageNameAndBody = m_messagesToInjectedBundlePostedToEmptyContext[i];
     
    732719    }
    733720
    734     if (m_processes.size() >= m_webProcessCountLimit)
     721    if (m_processes.size() >= maximumNumberOfProcesses())
    735722        return;
    736723
     
    796783    // FIXME (Multi-WebProcess): <rdar://problem/12239765> Some of the invalidation calls below are still necessary in multi-process mode, but they should only affect data structures pertaining to the process being disconnected.
    797784    // Clearing everything causes assertion failures, so it's less trouble to skip that for now.
    798     if (m_processModel != ProcessModelSharedSecondaryProcess) {
     785    if (processModel() != ProcessModelSharedSecondaryProcess) {
    799786        RefPtr<WebProcessProxy> protect(process);
    800787        if (m_processWithPageCache == process)
     
    823810WebProcessProxy& WebProcessPool::createNewWebProcessRespectingProcessCountLimit()
    824811{
    825     if (m_processes.size() < m_webProcessCountLimit)
     812    if (m_processes.size() < maximumNumberOfProcesses())
    826813        return createNewWebProcess();
    827814
     
    849836
    850837    RefPtr<WebProcessProxy> process;
    851     if (m_processModel == ProcessModelSharedSecondaryProcess) {
     838    if (processModel() == ProcessModelSharedSecondaryProcess) {
    852839        process = &ensureSharedWebProcess();
    853840    } else {
     
    904891{
    905892    if (m_processes.isEmpty()) {
    906         if (m_processModel == ProcessModelSharedSecondaryProcess)
     893        if (processModel() == ProcessModelSharedSecondaryProcess)
    907894            m_messagesToInjectedBundlePostedToEmptyContext.append(std::make_pair(messageName, messageBody));
    908895        return;
     
    987974#if ENABLE(NETWORK_PROCESS)
    988975    m_canHandleHTTPSServerTrustEvaluation = value;
    989     if (m_usesNetworkProcess && m_networkProcess) {
     976    if (usesNetworkProcess() && m_networkProcess) {
    990977        m_networkProcess->send(Messages::NetworkProcess::SetCanHandleHTTPSServerTrustEvaluation(value), 0);
    991978        return;
     
    10581045void WebProcessPool::setCacheModel(CacheModel cacheModel)
    10591046{
    1060     m_cacheModel = cacheModel;
    1061     sendToAllProcesses(Messages::WebProcess::SetCacheModel(m_cacheModel));
    1062 
    1063 #if ENABLE(NETWORK_PROCESS)
    1064     if (m_usesNetworkProcess && m_networkProcess)
    1065         m_networkProcess->send(Messages::NetworkProcess::SetCacheModel(m_cacheModel), 0);
     1047    m_configuration->setCacheModel(cacheModel);
     1048    sendToAllProcesses(Messages::WebProcess::SetCacheModel(cacheModel));
     1049
     1050#if ENABLE(NETWORK_PROCESS)
     1051    if (usesNetworkProcess() && m_networkProcess)
     1052        m_networkProcess->send(Messages::NetworkProcess::SetCacheModel(cacheModel), 0);
    10661053#endif
    10671054}
     
    11951182{
    11961183#if ENABLE(NETWORK_PROCESS)
    1197     if (m_usesNetworkProcess && m_networkProcess) {
     1184    if (usesNetworkProcess() && m_networkProcess) {
    11981185        m_networkProcess->send(Messages::NetworkProcess::AllowSpecificHTTPSCertificateForHost(certificate->certificateInfo(), host), 0);
    11991186        return;
     
    12501237void WebProcessPool::requestWebContentStatistics(StatisticsRequest* request)
    12511238{
    1252     if (m_processModel == ProcessModelSharedSecondaryProcess) {
     1239    if (processModel() == ProcessModelSharedSecondaryProcess) {
    12531240        if (m_processes.isEmpty())
    12541241            return;
     
    12671254    bool networkProcessUnavailable;
    12681255#if ENABLE(NETWORK_PROCESS)
    1269     networkProcessUnavailable = !m_usesNetworkProcess || !m_networkProcess;
     1256    networkProcessUnavailable = !usesNetworkProcess() || !m_networkProcess;
    12701257#else
    12711258    networkProcessUnavailable = true;
  • trunk/Source/WebKit2/UIProcess/WebProcessPool.h

    r185463 r185736  
    2929#include "APIDictionary.h"
    3030#include "APIObject.h"
     31#include "APIProcessPoolConfiguration.h"
    3132#include "APIWebsiteDataStore.h"
    3233#include "DownloadProxyMap.h"
     
    7273class DownloadClient;
    7374class LegacyContextHistoryClient;
    74 class ProcessPoolConfiguration;
    7575}
    7676
     
    140140
    141141    void setProcessModel(ProcessModel); // Can only be called when there are no processes running.
    142     ProcessModel processModel() const { return m_processModel; }
     142    ProcessModel processModel() const { return m_configuration->processModel(); }
    143143
    144144    void setMaximumNumberOfProcesses(unsigned); // Can only be called when there are no processes running.
    145     unsigned maximumNumberOfProcesses() const { return m_webProcessCountLimit; }
     145    unsigned maximumNumberOfProcesses() const { return !m_configuration->maximumProcessCount() ? UINT_MAX : m_configuration->maximumProcessCount(); }
    146146
    147147    const Vector<RefPtr<WebProcessProxy>>& processes() const { return m_processes; }
     
    170170    PassRefPtr<WebPageProxy> createWebPage(PageClient&, WebPageConfiguration);
    171171
    172     const String& injectedBundlePath() const { return m_injectedBundlePath; }
     172    const String& injectedBundlePath() const { return m_configuration->injectedBundlePath(); }
    173173
    174174    DownloadProxy* download(WebPageProxy* initiatingPage, const WebCore::ResourceRequest&);
     
    213213
    214214    void setCacheModel(CacheModel);
    215     CacheModel cacheModel() const { return m_cacheModel; }
     215    CacheModel cacheModel() const { return m_configuration->cacheModel(); }
    216216
    217217    void setDefaultRequestTimeoutInterval(double);
     
    424424    IPC::MessageReceiverMap m_messageReceiverMap;
    425425
    426     ProcessModel m_processModel;
    427     unsigned m_webProcessCountLimit; // The limit has no effect when process model is ProcessModelSharedSecondaryProcess.
    428    
    429426    Vector<RefPtr<WebProcessProxy>> m_processes;
    430427    bool m_haveInitialEmptyProcess;
     
    435432
    436433    RefPtr<API::Object> m_injectedBundleInitializationUserData;
    437     String m_injectedBundlePath;
    438434    WebContextInjectedBundleClient m_injectedBundleClient;
    439435
     
    472468    Vector<std::pair<String, RefPtr<API::Object>>> m_messagesToInjectedBundlePostedToEmptyContext;
    473469
    474     CacheModel m_cacheModel;
    475     uint64_t m_diskCacheSizeOverride;
    476 
    477470    bool m_memorySamplerEnabled;
    478471    double m_memorySamplerInterval;
     
    500493    String m_overrideCookieStorageDirectory;
    501494
    502     String m_applicationCacheDirectory;
    503     String m_indexedDBDatabaseDirectory;
    504     String m_mediaKeysStorageDirectory;
    505     String m_webSQLDatabaseDirectory;
    506 
    507495    bool m_shouldUseTestingNetworkSession;
    508496
     
    511499#if ENABLE(NETWORK_PROCESS)
    512500    bool m_canHandleHTTPSServerTrustEvaluation;
    513     bool m_usesNetworkProcess;
    514501    RefPtr<NetworkProcessProxy> m_networkProcess;
    515502#endif
     
    548535void WebProcessPool::sendToNetworkingProcess(T&& message)
    549536{
    550     switch (m_processModel) {
     537    switch (processModel()) {
    551538    case ProcessModelSharedSecondaryProcess:
    552539#if ENABLE(NETWORK_PROCESS)
    553         if (m_usesNetworkProcess) {
     540        if (usesNetworkProcess()) {
    554541            if (m_networkProcess && m_networkProcess->canSendMessage())
    555542                m_networkProcess->send(std::forward<T>(message), 0);
     
    575562void WebProcessPool::sendToNetworkingProcessRelaunchingIfNecessary(T&& message)
    576563{
    577     switch (m_processModel) {
     564    switch (processModel()) {
    578565    case ProcessModelSharedSecondaryProcess:
    579566#if ENABLE(NETWORK_PROCESS)
    580         if (m_usesNetworkProcess) {
     567        if (usesNetworkProcess()) {
    581568            ensureNetworkProcess();
    582569            m_networkProcess->send(std::forward<T>(message), 0);
     
    625612{
    626613    // FIXME (Multi-WebProcess): WebProcessPool doesn't track processes that have exited, so it cannot relaunch these. Perhaps this functionality won't be needed in this mode.
    627     if (m_processModel == ProcessModelSharedSecondaryProcess)
     614    if (processModel() == ProcessModelSharedSecondaryProcess)
    628615        ensureSharedWebProcess();
    629616    sendToAllProcesses(message);
     
    633620void WebProcessPool::sendToOneProcess(T&& message)
    634621{
    635     if (m_processModel == ProcessModelSharedSecondaryProcess)
     622    if (processModel() == ProcessModelSharedSecondaryProcess)
    636623        ensureSharedWebProcess();
    637624
     
    647634    }
    648635
    649     if (!messageSent && m_processModel == ProcessModelMultipleSecondaryProcesses) {
     636    if (!messageSent && processModel() == ProcessModelMultipleSecondaryProcesses) {
    650637        warmInitialProcess();
    651638        RefPtr<WebProcessProxy> process = m_processes.last();
  • trunk/Source/WebKit2/UIProcess/gtk/WebProcessPoolGtk.cpp

    r185651 r185736  
    110110    }
    111111
    112     parameters.memoryCacheDisabled = m_memoryCacheDisabled || m_cacheModel == CacheModelDocumentViewer;
     112    parameters.memoryCacheDisabled = m_memoryCacheDisabled || cacheModel() == CacheModelDocumentViewer;
    113113}
    114114
Note: See TracChangeset for help on using the changeset viewer.