Title: [240743] trunk/Source/WebKit
Revision
240743
Author
[email protected]
Date
2019-01-30 16:56:56 -0800 (Wed, 30 Jan 2019)

Log Message

Fix crashes when trying to ref the CallbackAggregator in NetworkProcess
https://bugs.webkit.org/show_bug.cgi?id=194054

Reviewed by Brent Fulgham.

The callback aggregators should be ThreadSafeRefCounted since they are passed to other threads.

* NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::fetchWebsiteData):
(WebKit::NetworkProcess::deleteWebsiteDataForTopPrivatelyControlledDomainsInAllPersistentDataStores):
(WebKit::NetworkProcess::topPrivatelyControlledDomainsWithWebsiteData):

Modified Paths

Diff

Modified: trunk/Source/WebKit/ChangeLog (240742 => 240743)


--- trunk/Source/WebKit/ChangeLog	2019-01-31 00:54:04 UTC (rev 240742)
+++ trunk/Source/WebKit/ChangeLog	2019-01-31 00:56:56 UTC (rev 240743)
@@ -1,3 +1,17 @@
+2019-01-30  Chris Dumez  <[email protected]>
+
+        Fix crashes when trying to ref the CallbackAggregator in NetworkProcess
+        https://bugs.webkit.org/show_bug.cgi?id=194054
+
+        Reviewed by Brent Fulgham.
+
+        The callback aggregators should be ThreadSafeRefCounted since they are passed to other threads.
+
+        * NetworkProcess/NetworkProcess.cpp:
+        (WebKit::NetworkProcess::fetchWebsiteData):
+        (WebKit::NetworkProcess::deleteWebsiteDataForTopPrivatelyControlledDomainsInAllPersistentDataStores):
+        (WebKit::NetworkProcess::topPrivatelyControlledDomainsWithWebsiteData):
+
 2019-01-30  Daniel Bates  <[email protected]>
 
         [iOS] Keyups for non-modifier keys identified as "Dead" when not focused in a content-editable element

Modified: trunk/Source/WebKit/NetworkProcess/NetworkProcess.cpp (240742 => 240743)


--- trunk/Source/WebKit/NetworkProcess/NetworkProcess.cpp	2019-01-31 00:54:04 UTC (rev 240742)
+++ trunk/Source/WebKit/NetworkProcess/NetworkProcess.cpp	2019-01-31 00:56:56 UTC (rev 240743)
@@ -1215,7 +1215,7 @@
 
 void NetworkProcess::fetchWebsiteData(PAL::SessionID sessionID, OptionSet<WebsiteDataType> websiteDataTypes, OptionSet<WebsiteDataFetchOption> fetchOptions, uint64_t callbackID)
 {
-    struct CallbackAggregator final : public RefCounted<CallbackAggregator> {
+    struct CallbackAggregator final : public ThreadSafeRefCounted<CallbackAggregator> {
         explicit CallbackAggregator(Function<void (WebsiteData)>&& completionHandler)
             : m_completionHandler(WTFMove(completionHandler))
         {
@@ -1437,7 +1437,7 @@
 {
     OptionSet<WebsiteDataFetchOption> fetchOptions = WebsiteDataFetchOption::DoNotCreateProcesses;
 
-    struct CallbackAggregator final : public RefCounted<CallbackAggregator> {
+    struct CallbackAggregator final : public ThreadSafeRefCounted<CallbackAggregator> {
         explicit CallbackAggregator(CompletionHandler<void(const HashSet<String>&)>&& completionHandler)
             : m_completionHandler(WTFMove(completionHandler))
         {
@@ -1569,7 +1569,7 @@
 {
     OptionSet<WebsiteDataFetchOption> fetchOptions = WebsiteDataFetchOption::DoNotCreateProcesses;
     
-    struct CallbackAggregator final : public RefCounted<CallbackAggregator> {
+    struct CallbackAggregator final : public ThreadSafeRefCounted<CallbackAggregator> {
         explicit CallbackAggregator(CompletionHandler<void(HashSet<String>&&)>&& completionHandler)
             : m_completionHandler(WTFMove(completionHandler))
         {
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to