Title: [293550] trunk/Source/WebCore
Revision
293550
Author
[email protected]
Date
2022-04-27 19:03:42 -0700 (Wed, 27 Apr 2022)

Log Message

Ensure completion handler is called in SWServer::clear
https://bugs.webkit.org/show_bug.cgi?id=239755

Reviewed by Youenn Fablet.

* workers/service/server/SWServer.cpp:
(WebCore::SWServer::clearAll):
(WebCore::SWServer::clear):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (293549 => 293550)


--- trunk/Source/WebCore/ChangeLog	2022-04-28 00:32:48 UTC (rev 293549)
+++ trunk/Source/WebCore/ChangeLog	2022-04-28 02:03:42 UTC (rev 293550)
@@ -1,3 +1,14 @@
+2022-04-27  Sihui Liu  <[email protected]>
+
+        Ensure completion handler is called in SWServer::clear
+        https://bugs.webkit.org/show_bug.cgi?id=239755
+
+        Reviewed by Youenn Fablet.
+
+        * workers/service/server/SWServer.cpp:
+        (WebCore::SWServer::clearAll):
+        (WebCore::SWServer::clear):
+
 2022-04-27  Oriol Brufau  <[email protected]>
 
         Reland "Fix CSS cascade regarding logical properties"

Modified: trunk/Source/WebCore/workers/service/server/SWServer.cpp (293549 => 293550)


--- trunk/Source/WebCore/workers/service/server/SWServer.cpp	2022-04-28 00:32:48 UTC (rev 293549)
+++ trunk/Source/WebCore/workers/service/server/SWServer.cpp	2022-04-28 02:03:42 UTC (rev 293550)
@@ -287,8 +287,10 @@
         m_registrations.begin()->value->clear();
     m_pendingContextDatas.clear();
     m_originStore->clearAll();
-    if (m_registrationStore)
-        m_registrationStore->clearAll(WTFMove(completionHandler));
+    if (!m_registrationStore)
+        return completionHandler();
+
+    m_registrationStore->clearAll(WTFMove(completionHandler));
 }
 
 void SWServer::startSuspension(CompletionHandler<void()>&& completionHandler)
@@ -341,8 +343,10 @@
     for (auto* registration : registrationsToRemove)
         registration->clear();
 
-    if (m_registrationStore)
-        m_registrationStore->flushChanges(WTFMove(completionHandler));
+    if (!m_registrationStore)
+        return completionHandler();
+
+    m_registrationStore->flushChanges(WTFMove(completionHandler));
 }
 
 void SWServer::Connection::finishFetchingScriptInServer(const ServiceWorkerJobDataIdentifier& jobDataIdentifier, const ServiceWorkerRegistrationKey& registrationKey, WorkerFetchResult&& result)
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to