Title: [245709] trunk/Source/WebKit
Revision
245709
Author
[email protected]
Date
2019-05-23 13:23:01 -0700 (Thu, 23 May 2019)

Log Message

Handling for non-persistent data should be consistent in computeNetworkProcessAccessTypeForDataFetch
https://bugs.webkit.org/show_bug.cgi?id=198050

Reviewed by Youenn Fablet.

* UIProcess/WebsiteData/WebsiteDataStore.cpp:
(WebKit::computeNetworkProcessAccessTypeForDataFetch):

Modified Paths

Diff

Modified: trunk/Source/WebKit/ChangeLog (245708 => 245709)


--- trunk/Source/WebKit/ChangeLog	2019-05-23 20:20:03 UTC (rev 245708)
+++ trunk/Source/WebKit/ChangeLog	2019-05-23 20:23:01 UTC (rev 245709)
@@ -1,3 +1,13 @@
+2019-05-23  Sihui Liu  <[email protected]>
+
+        Handling for non-persistent data should be consistent in computeNetworkProcessAccessTypeForDataFetch
+        https://bugs.webkit.org/show_bug.cgi?id=198050
+
+        Reviewed by Youenn Fablet.
+
+        * UIProcess/WebsiteData/WebsiteDataStore.cpp:
+        (WebKit::computeNetworkProcessAccessTypeForDataFetch):
+
 2019-05-23  Youenn Fablet  <[email protected]>
 
         Set default WebsiteDataStore storage quota based on StorageQuotaManager

Modified: trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.cpp (245708 => 245709)


--- trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.cpp	2019-05-23 20:20:03 UTC (rev 245708)
+++ trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.cpp	2019-05-23 20:23:01 UTC (rev 245709)
@@ -212,44 +212,14 @@
 
 static ProcessAccessType computeNetworkProcessAccessTypeForDataFetch(OptionSet<WebsiteDataType> dataTypes, bool isNonPersistentStore)
 {
-    ProcessAccessType processAccessType = ProcessAccessType::None;
-
-    if (dataTypes.contains(WebsiteDataType::Cookies)) {
-        if (isNonPersistentStore)
-            processAccessType = std::max(processAccessType, ProcessAccessType::OnlyIfLaunched);
-        else
-            processAccessType = std::max(processAccessType, ProcessAccessType::Launch);
+    for (auto dataType : dataTypes) {
+        if (WebsiteData::ownerProcess(dataType) == WebsiteDataProcessType::Network) {
+            if (isNonPersistentStore)
+                return ProcessAccessType::OnlyIfLaunched;
+            return ProcessAccessType::Launch;
+        }
     }
-
-    if (dataTypes.contains(WebsiteDataType::Credentials) && isNonPersistentStore)
-        processAccessType = std::max(processAccessType, ProcessAccessType::OnlyIfLaunched);
-
-    if (dataTypes.contains(WebsiteDataType::DiskCache) && !isNonPersistentStore)
-        processAccessType = std::max(processAccessType, ProcessAccessType::Launch);
-
-    if (dataTypes.contains(WebsiteDataType::SessionStorage))
-        processAccessType = std::max(processAccessType, ProcessAccessType::OnlyIfLaunched);
-    
-    if (dataTypes.contains(WebsiteDataType::LocalStorage)) {
-        if (isNonPersistentStore)
-            processAccessType = std::max(processAccessType, ProcessAccessType::OnlyIfLaunched);
-        else
-            processAccessType = std::max(processAccessType, ProcessAccessType::Launch);
-    }
-
-    // FIXME: https://bugs.webkit.org/show_bug.cgi?id=198050.
-    if (dataTypes.contains(WebsiteDataType::DOMCache))
-        processAccessType = std::max(processAccessType, ProcessAccessType::Launch);
-    
-    if (dataTypes.contains(WebsiteDataType::IndexedDBDatabases) && !isNonPersistentStore)
-        processAccessType = std::max(processAccessType, ProcessAccessType::Launch);
-
-#if ENABLE(SERVICE_WORKER)
-    if (dataTypes.contains(WebsiteDataType::ServiceWorkerRegistrations) && !isNonPersistentStore)
-        processAccessType = std::max(processAccessType, ProcessAccessType::Launch);
-#endif
-
-    return processAccessType;
+    return ProcessAccessType::None;
 }
 
 static ProcessAccessType computeWebProcessAccessTypeForDataFetch(OptionSet<WebsiteDataType> dataTypes, bool isNonPersistentStore)
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to