Title: [248633] trunk/Source/WebKit
Revision
248633
Author
[email protected]
Date
2019-08-13 13:58:19 -0700 (Tue, 13 Aug 2019)

Log Message

Fix potential thread safety issue under StorageManager::getSessionStorageOrigins()
https://bugs.webkit.org/show_bug.cgi?id=200684

Reviewed by Geoffrey Garen.

Fix potential thread safety issue under StorageManager::getSessionStorageOrigins(). The origins are being
passed from the background queue to the main thread without isolated copy.

* NetworkProcess/WebStorage/StorageManager.cpp:
(WebKit::StorageManager::getSessionStorageOrigins):

Modified Paths

Diff

Modified: trunk/Source/WebKit/ChangeLog (248632 => 248633)


--- trunk/Source/WebKit/ChangeLog	2019-08-13 20:55:52 UTC (rev 248632)
+++ trunk/Source/WebKit/ChangeLog	2019-08-13 20:58:19 UTC (rev 248633)
@@ -1,3 +1,16 @@
+2019-08-13  Chris Dumez  <[email protected]>
+
+        Fix potential thread safety issue under StorageManager::getSessionStorageOrigins()
+        https://bugs.webkit.org/show_bug.cgi?id=200684
+
+        Reviewed by Geoffrey Garen.
+
+        Fix potential thread safety issue under StorageManager::getSessionStorageOrigins(). The origins are being
+        passed from the background queue to the main thread without isolated copy.
+
+        * NetworkProcess/WebStorage/StorageManager.cpp:
+        (WebKit::StorageManager::getSessionStorageOrigins):
+
 2019-08-12  Jiewen Tan  <[email protected]>
 
         [WebAuthn] Make CtapHidAuthenticator/U2fHidAuthenticator to CtapAuthenticator/U2fAuthenticator

Modified: trunk/Source/WebKit/NetworkProcess/WebStorage/StorageManager.cpp (248632 => 248633)


--- trunk/Source/WebKit/NetworkProcess/WebStorage/StorageManager.cpp	2019-08-13 20:55:52 UTC (rev 248632)
+++ trunk/Source/WebKit/NetworkProcess/WebStorage/StorageManager.cpp	2019-08-13 20:58:19 UTC (rev 248633)
@@ -180,7 +180,7 @@
 
         for (const auto& sessionStorageNamespace : m_sessionStorageNamespaces.values()) {
             for (auto& origin : sessionStorageNamespace->origins())
-                origins.add(origin);
+                origins.add(crossThreadCopy(origin));
         }
 
         RunLoop::main().dispatch([origins = WTFMove(origins), completionHandler = WTFMove(completionHandler)]() mutable {
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to