Changeset 250739 in webkit


Ignore:
Timestamp:
Oct 4, 2019, 12:33:00 PM (6 years ago)
Author:
achristensen@apple.com
Message:

Stop sending list of display-isolated schemes to NetworkProcess
https://bugs.webkit.org/show_bug.cgi?id=202557

Reviewed by Youenn Fablet.

Source/WebCore:

They are only ever used in the WebProcess in SecurityOrigin::canDisplay.
If someone adds code that uses them in the NetworkProcess, they will hit my new assertion.

No change in behavior.

  • page/SecurityOrigin.cpp:

(WebCore::SecurityOrigin::canDisplay const):

  • platform/RuntimeApplicationChecks.h:

(WebCore::isInNetworkProcess):

  • platform/cocoa/RuntimeApplicationChecksCocoa.mm:

(WebCore::isInNetworkProcess):

Source/WebKit:

  • NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::initializeNetworkProcess):
(WebKit::NetworkProcess::registerURLSchemeAsDisplayIsolated const): Deleted.

  • NetworkProcess/NetworkProcess.h:
  • NetworkProcess/NetworkProcess.messages.in:
  • NetworkProcess/NetworkProcessCreationParameters.cpp:

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

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

(WebKit::WebProcessPool::ensureNetworkProcess):
(WebKit::WebProcessPool::registerURLSchemeAsDisplayIsolated):

Location:
trunk/Source
Files:
11 edited

Legend:

Unmodified
Added
Removed
  • TabularUnified trunk/Source/WebCore/ChangeLog

    r250738 r250739  
     12019-10-04  Alex Christensen  <achristensen@webkit.org>
     2
     3        Stop sending list of display-isolated schemes to NetworkProcess
     4        https://bugs.webkit.org/show_bug.cgi?id=202557
     5
     6        Reviewed by Youenn Fablet.
     7
     8        They are only ever used in the WebProcess in SecurityOrigin::canDisplay.
     9        If someone adds code that uses them in the NetworkProcess, they will hit my new assertion.
     10
     11        No change in behavior.
     12
     13        * page/SecurityOrigin.cpp:
     14        (WebCore::SecurityOrigin::canDisplay const):
     15        * platform/RuntimeApplicationChecks.h:
     16        (WebCore::isInNetworkProcess):
     17        * platform/cocoa/RuntimeApplicationChecksCocoa.mm:
     18        (WebCore::isInNetworkProcess):
     19
    1202019-10-04  Alex Christensen  <achristensen@webkit.org>
    221
  • TabularUnified trunk/Source/WebCore/page/SecurityOrigin.cpp

    r250738 r250739  
    3434#include "OriginAccessEntry.h"
    3535#include "PublicSuffix.h"
     36#include "RuntimeApplicationChecks.h"
    3637#include "SecurityPolicy.h"
    3738#include "TextEncoding.h"
     
    354355bool SecurityOrigin::canDisplay(const URL& url) const
    355356{
     357    ASSERT(!isInNetworkProcess());
    356358    if (m_universalAccess)
    357359        return true;
  • TabularUnified trunk/Source/WebCore/platform/RuntimeApplicationChecks.h

    r250345 r250739  
    4242
    4343bool isInWebProcess();
     44bool isInNetworkProcess();
    4445
    4546WEBCORE_EXPORT void setApplicationSDKVersion(uint32_t);
     
    104105#endif // PLATFORM(IOS_FAMILY)
    105106
     107#else
     108
     109inline bool isInNetworkProcess() { return false; }
     110
    106111#endif // PLATFORM(COCOA)
    107112
  • TabularUnified trunk/Source/WebCore/platform/cocoa/RuntimeApplicationChecksCocoa.mm

    r250345 r250739  
    9191}
    9292
     93bool isInNetworkProcess()
     94{
     95    static bool mainBundleIsNetworkProcess = [[[NSBundle mainBundle] bundleIdentifier] hasPrefix:@"com.apple.WebKit.Networking"];
     96    return mainBundleIsNetworkProcess;
     97}
     98
    9399static bool applicationBundleIsEqualTo(const String& bundleIdentifierString)
    94100{
  • TabularUnified trunk/Source/WebKit/ChangeLog

    r250738 r250739  
     12019-10-04  Alex Christensen  <achristensen@webkit.org>
     2
     3        Stop sending list of display-isolated schemes to NetworkProcess
     4        https://bugs.webkit.org/show_bug.cgi?id=202557
     5
     6        Reviewed by Youenn Fablet.
     7
     8        * NetworkProcess/NetworkProcess.cpp:
     9        (WebKit::NetworkProcess::initializeNetworkProcess):
     10        (WebKit::NetworkProcess::registerURLSchemeAsDisplayIsolated const): Deleted.
     11        * NetworkProcess/NetworkProcess.h:
     12        * NetworkProcess/NetworkProcess.messages.in:
     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        (WebKit::WebProcessPool::registerURLSchemeAsDisplayIsolated):
     20
    1212019-10-04  Alex Christensen  <achristensen@webkit.org>
    222
  • TabularUnified trunk/Source/WebKit/NetworkProcess/NetworkProcess.cpp

    r250738 r250739  
    351351        registerURLSchemeAsNoAccess(scheme);
    352352
    353     for (auto& scheme : parameters.urlSchemesRegisteredAsDisplayIsolated)
    354         registerURLSchemeAsDisplayIsolated(scheme);
    355 
    356353    for (auto& scheme : parameters.urlSchemesRegisteredAsCORSEnabled)
    357354        registerURLSchemeAsCORSEnabled(scheme);
     
    22222219}
    22232220
    2224 void NetworkProcess::registerURLSchemeAsDisplayIsolated(const String& scheme) const
    2225 {
    2226     LegacySchemeRegistry::registerURLSchemeAsDisplayIsolated(scheme);
    2227 }
    2228 
    22292221void NetworkProcess::registerURLSchemeAsCORSEnabled(const String& scheme) const
    22302222{
  • TabularUnified trunk/Source/WebKit/NetworkProcess/NetworkProcess.h

    r250728 r250739  
    440440    void registerURLSchemeAsLocal(const String&) const;
    441441    void registerURLSchemeAsNoAccess(const String&) const;
    442     void registerURLSchemeAsDisplayIsolated(const String&) const;
    443442    void registerURLSchemeAsCORSEnabled(const String&) const;
    444443    void registerURLSchemeAsCanDisplayOnlyIfCanRequest(const String&) const;
  • TabularUnified trunk/Source/WebKit/NetworkProcess/NetworkProcess.messages.in

    r250621 r250739  
    147147    RegisterURLSchemeAsLocal(String scheme)
    148148    RegisterURLSchemeAsNoAccess(String scheme)
    149     RegisterURLSchemeAsDisplayIsolated(String scheme)
    150149    RegisterURLSchemeAsCORSEnabled(String scheme)
    151150    RegisterURLSchemeAsCanDisplayOnlyIfCanRequest(String scheme)
  • TabularUnified trunk/Source/WebKit/NetworkProcess/NetworkProcessCreationParameters.cpp

    r250521 r250739  
    7373    encoder << urlSchemesRegisteredAsLocal;
    7474    encoder << urlSchemesRegisteredAsNoAccess;
    75     encoder << urlSchemesRegisteredAsDisplayIsolated;
    7675    encoder << urlSchemesRegisteredAsCORSEnabled;
    7776    encoder << urlSchemesRegisteredAsCanDisplayOnlyIfCanRequest;
     
    161160    if (!decoder.decode(result.urlSchemesRegisteredAsNoAccess))
    162161        return false;
    163     if (!decoder.decode(result.urlSchemesRegisteredAsDisplayIsolated))
    164         return false;
    165162    if (!decoder.decode(result.urlSchemesRegisteredAsCORSEnabled))
    166163        return false;
  • TabularUnified trunk/Source/WebKit/NetworkProcess/NetworkProcessCreationParameters.h

    r250521 r250739  
    9090    Vector<String> urlSchemesRegisteredAsLocal;
    9191    Vector<String> urlSchemesRegisteredAsNoAccess;
    92     Vector<String> urlSchemesRegisteredAsDisplayIsolated;
    9392    Vector<String> urlSchemesRegisteredAsCanDisplayOnlyIfCanRequest;
    9493    Vector<String> urlSchemesRegisteredAsCORSEnabled;
  • TabularUnified trunk/Source/WebKit/UIProcess/WebProcessPool.cpp

    r250728 r250739  
    522522    parameters.urlSchemesRegisteredAsLocal = copyToVector(m_schemesToRegisterAsLocal);
    523523    parameters.urlSchemesRegisteredAsNoAccess = copyToVector(m_schemesToRegisterAsNoAccess);
    524     parameters.urlSchemesRegisteredAsDisplayIsolated = copyToVector(m_schemesToRegisterAsDisplayIsolated);
    525524    parameters.urlSchemesRegisteredAsCORSEnabled = copyToVector(m_schemesToRegisterAsCORSEnabled);
    526525    parameters.urlSchemesRegisteredAsCanDisplayOnlyIfCanRequest = copyToVector(m_schemesToRegisterAsCanDisplayOnlyIfCanRequest);
     
    14951494    m_schemesToRegisterAsDisplayIsolated.add(urlScheme);
    14961495    sendToAllProcesses(Messages::WebProcess::RegisterURLSchemeAsDisplayIsolated(urlScheme));
    1497     sendToNetworkingProcess(Messages::NetworkProcess::RegisterURLSchemeAsDisplayIsolated(urlScheme));
    14981496}
    14991497
Note: See TracChangeset for help on using the changeset viewer.