Changeset 245488 in webkit
- Timestamp:
- May 17, 2019 4:44:23 PM (5 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r245483 r245488 1 2019-05-17 Sihui Liu <sihui_liu@apple.com> 2 3 ASSERTION FAILED: !m_backingStore in WebCore::IDBServer::UniqueIDBDatabase::didDeleteBackingStore(uint64_t) 4 https://bugs.webkit.org/show_bug.cgi?id=197741 5 <rdar://problem/50625006> 6 7 Reviewed by Youenn Fablet. 8 9 If an open request is made before a delete request, open task should be performed before delete task on the 10 database thread. After r242911, open request needs to wait decision of StorageQuotaManager before posting task 11 to database thread, while delete request needs not. This makes deletion happen before open. 12 13 We need to make sure tasks are in correct order by not starting next open or delete request when database is in 14 the middle of open or deletion. 15 16 * Modules/indexeddb/server/UniqueIDBDatabase.cpp: 17 (WebCore::IDBServer::UniqueIDBDatabase::performCurrentOpenOperation): 18 (WebCore::IDBServer::UniqueIDBDatabase::handleDatabaseOperations): 19 1 20 2019-05-17 Antoine Quint <graouts@apple.com> 2 21 -
trunk/Source/WebCore/Modules/indexeddb/server/UniqueIDBDatabase.cpp
r244687 r245488 229 229 m_currentOpenDBRequest->connection().didOpenDatabase(result); 230 230 m_currentOpenDBRequest = nullptr; 231 m_isOpeningBackingStore = false; 231 232 break; 232 233 } … … 461 462 ASSERT(!m_hardClosedForUserDelete); 462 463 463 if (m_deleteBackingStoreInProgress )464 if (m_deleteBackingStoreInProgress || m_isOpeningBackingStore) 464 465 return; 465 466
Note: See TracChangeset
for help on using the changeset viewer.