REGRESSION: ASSERTION FAILED: !m_importCompleted
authorbeidson@apple.com <beidson@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 18 Dec 2017 19:20:40 +0000 (19:20 +0000)
committerbeidson@apple.com <beidson@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 18 Dec 2017 19:20:40 +0000 (19:20 +0000)
https://bugs.webkit.org/show_bug.cgi?id=180935

Unreviewed bot gardening.

No new tests (Covered by existing tests)

The ASSERT was invalid for database pushes failing to open databases like this, so skip it for that scenario.

* workers/service/server/RegistrationStore.cpp:
(WebCore::RegistrationStore::databaseFailedToOpen):
* workers/service/server/SWServer.cpp:
(WebCore::SWServer::registrationStoreDatabaseFailedToOpen):
* workers/service/server/SWServer.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@226064 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Source/WebCore/ChangeLog
Source/WebCore/workers/service/server/RegistrationStore.cpp
Source/WebCore/workers/service/server/SWServer.cpp
Source/WebCore/workers/service/server/SWServer.h

index ddecb85..0f0728e 100644 (file)
@@ -1,3 +1,20 @@
+2017-12-18  Brady Eidson  <beidson@apple.com>
+
+        REGRESSION: ASSERTION FAILED: !m_importCompleted
+        https://bugs.webkit.org/show_bug.cgi?id=180935
+
+        Unreviewed bot gardening.
+
+        No new tests (Covered by existing tests)
+
+        The ASSERT was invalid for database pushes failing to open databases like this, so skip it for that scenario.
+
+        * workers/service/server/RegistrationStore.cpp:
+        (WebCore::RegistrationStore::databaseFailedToOpen):
+        * workers/service/server/SWServer.cpp:
+        (WebCore::SWServer::registrationStoreDatabaseFailedToOpen):
+        * workers/service/server/SWServer.h:
+
 2017-12-18  Jer Noble  <jer.noble@apple.com>
 
         Playing media elements which call "pause(); play()" will have the play promise rejected.
index f4f5446..ad80767 100644 (file)
@@ -100,7 +100,7 @@ void RegistrationStore::addRegistrationFromDatabase(ServiceWorkerContextData&& c
 
 void RegistrationStore::databaseFailedToOpen()
 {
-    m_server.registrationStoreImportComplete();
+    m_server.registrationStoreDatabaseFailedToOpen();
 }
 
 void RegistrationStore::databaseOpenedAndRecordsImported()
index 5b0d1a6..3e2cc5b 100644 (file)
@@ -114,6 +114,12 @@ void SWServer::registrationStoreImportComplete()
     performGetOriginsWithRegistrationsCallbacks();
 }
 
+void SWServer::registrationStoreDatabaseFailedToOpen()
+{
+    if (!m_importCompleted)
+        registrationStoreImportComplete();
+}
+
 void SWServer::addRegistrationFromStore(ServiceWorkerContextData&& data)
 {
     // Pages should not have been able to make a new registration to this key while the import was still taking place.
index 9a78b81..481bde6 100644 (file)
@@ -173,6 +173,7 @@ public:
 
     void addRegistrationFromStore(ServiceWorkerContextData&&);
     void registrationStoreImportComplete();
+    void registrationStoreDatabaseFailedToOpen();
 
     WEBCORE_EXPORT void getOriginsWithRegistrations(WTF::Function<void(const HashSet<SecurityOriginData>&)>);