Changeset 250456 in webkit


Ignore:
Timestamp:
Sep 27, 2019 1:49:49 PM (5 years ago)
Author:
achristensen@apple.com
Message:

Layout Test http/tests/cache-storage/cache-records-persistency.https.html is failing
https://bugs.webkit.org/show_bug.cgi?id=202323

Reviewed by Tim Horton.

This reverts most of r250351.
It turns out NetworkProcessProxy::addSession has some side effects in the UIProcess that are useful for NetworkProcess resumption after crashes. Let's keep that.

  • NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::initializeNetworkProcess):

  • NetworkProcess/NetworkProcessCreationParameters.cpp:

(WebKit::NetworkProcessCreationParameters::encode const):
(WebKit::NetworkProcessCreationParameters::decode):

  • NetworkProcess/NetworkProcessCreationParameters.h:
  • UIProcess/WebProcessPool.cpp:

(WebKit::WebProcessPool::ensureNetworkProcess):

Location:
trunk/Source/WebKit
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebKit/ChangeLog

    r250438 r250456  
     12019-09-27  Alex Christensen  <achristensen@webkit.org>
     2
     3        Layout Test http/tests/cache-storage/cache-records-persistency.https.html is failing
     4        https://bugs.webkit.org/show_bug.cgi?id=202323
     5
     6        Reviewed by Tim Horton.
     7
     8        This reverts most of r250351.
     9        It turns out NetworkProcessProxy::addSession has some side effects in the UIProcess that are useful for NetworkProcess resumption after crashes.  Let's keep that.
     10
     11        * NetworkProcess/NetworkProcess.cpp:
     12        (WebKit::NetworkProcess::initializeNetworkProcess):
     13        * NetworkProcess/NetworkProcessCreationParameters.cpp:
     14        (WebKit::NetworkProcessCreationParameters::encode const):
     15        (WebKit::NetworkProcessCreationParameters::decode):
     16        * NetworkProcess/NetworkProcessCreationParameters.h:
     17        * UIProcess/WebProcessPool.cpp:
     18        (WebKit::WebProcessPool::ensureNetworkProcess):
     19
    1202019-09-27  Jer Noble  <jer.noble@apple.com>
    221
  • trunk/Source/WebKit/NetworkProcess/NetworkProcess.cpp

    r250426 r250456  
    323323    auto sessionID = parameters.defaultDataStoreParameters.networkSessionParameters.sessionID;
    324324    setSession(sessionID, NetworkSession::create(*this, WTFMove(parameters.defaultDataStoreParameters.networkSessionParameters)));
    325     for (auto&& parameters : WTFMove(parameters.nonDefaultDataStoreParameters))
    326         addWebsiteDataStore(WTFMove(parameters));
    327325
    328326#if ENABLE(INDEXED_DATABASE)
  • trunk/Source/WebKit/NetworkProcess/NetworkProcessCreationParameters.cpp

    r250422 r250456  
    6363#endif
    6464    encoder << defaultDataStoreParameters;
    65     encoder << nonDefaultDataStoreParameters;
    6665#if USE(SOUP)
    6766    encoder.encodeEnum(cookieAcceptPolicy);
     
    147146    result.defaultDataStoreParameters = WTFMove(*defaultDataStoreParameters);
    148147
    149     Optional<Vector<WebsiteDataStoreParameters>> nonDefaultDataStoreParameters;
    150     decoder >> nonDefaultDataStoreParameters;
    151     if (!nonDefaultDataStoreParameters)
    152         return false;
    153     result.nonDefaultDataStoreParameters = WTFMove(*nonDefaultDataStoreParameters);
    154    
    155148#if USE(SOUP)
    156149    if (!decoder.decodeEnum(result.cookieAcceptPolicy))
  • trunk/Source/WebKit/NetworkProcess/NetworkProcessCreationParameters.h

    r250422 r250456  
    7979
    8080    WebsiteDataStoreParameters defaultDataStoreParameters;
    81     Vector<WebsiteDataStoreParameters> nonDefaultDataStoreParameters;
    8281   
    8382#if USE(SOUP)
  • trunk/Source/WebKit/UIProcess/WebProcessPool.cpp

    r250426 r250456  
    630630    platformInitializeNetworkProcess(parameters);
    631631
     632    // Initialize the network process.
     633    networkProcess->send(Messages::NetworkProcess::InitializeNetworkProcess(parameters), 0);
     634
     635#if PLATFORM(COCOA)
     636    networkProcess->send(Messages::NetworkProcess::SetQOS(networkProcessLatencyQOS(), networkProcessThroughputQOS()), 0);
     637#endif
     638
     639    if (m_didNetworkProcessCrash) {
     640        m_didNetworkProcessCrash = false;
     641        reinstateNetworkProcessAssertionState(*networkProcess);
     642    }
     643
     644    if (withWebsiteDataStore) {
     645        networkProcess->addSession(makeRef(*withWebsiteDataStore));
     646        withWebsiteDataStore->clearPendingCookies();
     647    }
     648
    632649    // Make sure the network process knows about all the sessions that have been registered before it started.
    633650    for (auto& sessionID : m_sessionToPageIDsMap.keys()) {
    634651        if (auto* websiteDataStore = WebsiteDataStore::existingNonDefaultDataStoreForSessionID(sessionID))
    635             parameters.nonDefaultDataStoreParameters.append(websiteDataStore->parameters());
    636     }
    637 
    638     // Initialize the network process.
    639     networkProcess->send(Messages::NetworkProcess::InitializeNetworkProcess(parameters), 0);
    640 
    641 #if PLATFORM(COCOA)
    642     networkProcess->send(Messages::NetworkProcess::SetQOS(networkProcessLatencyQOS(), networkProcessThroughputQOS()), 0);
    643 #endif
    644 
    645     if (m_didNetworkProcessCrash) {
    646         m_didNetworkProcessCrash = false;
    647         reinstateNetworkProcessAssertionState(*networkProcess);
    648     }
    649 
    650     if (withWebsiteDataStore) {
    651         networkProcess->addSession(makeRef(*withWebsiteDataStore));
    652         withWebsiteDataStore->clearPendingCookies();
     652            networkProcess->addSession(*websiteDataStore);
    653653    }
    654654
Note: See TracChangeset for help on using the changeset viewer.