Bug 1558522 - Ensure that file actors created after the database was closed are expired. r=asuth, a=jcristau
authorSimon Giesecke <sgiesecke@mozilla.com>
Wed, 09 Oct 2019 03:21:22 +0000
changeset 552366 ff97b7b66c717dfaa02d0991a141f81e3572e87c
parent 552365 9e9523dd9fe95bac23c481080398341d688617e9
child 552367 01fd845cda3ff35e3efc685c9601107989d90eea
push id12155
push userjcristau@mozilla.com
push dateThu, 10 Oct 2019 14:13:03 +0000
treeherdermozilla-beta@2ce58a99cbfd [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersasuth, jcristau
bugs1558522
milestone70.0
Bug 1558522 - Ensure that file actors created after the database was closed are expired. r=asuth, a=jcristau Differential Revision: https://phabricator.services.mozilla.com/D48046
dom/indexedDB/IDBDatabase.cpp
--- a/dom/indexedDB/IDBDatabase.cpp
+++ b/dom/indexedDB/IDBDatabase.cpp
@@ -1086,16 +1086,18 @@ void IDBDatabase::DisconnectFromOwner() 
   DOMEventTargetHelper::DisconnectFromOwner();
 }
 
 void IDBDatabase::LastRelease() {
   AssertIsOnOwningThread();
 
   CloseInternal();
 
+  ExpireFileActors(/* aExpireAll */ true);
+
   if (mBackgroundActor) {
     mBackgroundActor->SendDeleteMeInternal();
     MOZ_ASSERT(!mBackgroundActor, "SendDeleteMeInternal should have cleared!");
   }
 }
 
 nsresult IDBDatabase::PostHandleEvent(EventChainPostVisitor& aVisitor) {
   nsresult rv =