CrashTracer: com.apple.WebKit.Storage at WebCore::IDBServer::UniqueIDBDatabase::sched...
authorsihui_liu@apple.com <sihui_liu@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 10 Aug 2018 19:05:45 +0000 (19:05 +0000)
committersihui_liu@apple.com <sihui_liu@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 10 Aug 2018 19:05:45 +0000 (19:05 +0000)
https://bugs.webkit.org/show_bug.cgi?id=188461
<rdar://problem/33555052>

Reviewed by Chris Dumez.

When we try to schedule shutdown for database, we should cancel the timer so no
scheduleShutdownForClose will be running after this.

* Modules/indexeddb/server/UniqueIDBDatabase.cpp:
(WebCore::IDBServer::UniqueIDBDatabase::scheduleShutdownForClose):

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

Source/WebCore/ChangeLog
Source/WebCore/Modules/indexeddb/server/UniqueIDBDatabase.cpp

index 43688a2..786fc99 100644 (file)
@@ -1,3 +1,17 @@
+2018-08-10  Sihui Liu  <sihui_liu@apple.com>
+
+        CrashTracer: com.apple.WebKit.Storage at WebCore::IDBServer::UniqueIDBDatabase::scheduleShutdownForClose
+        https://bugs.webkit.org/show_bug.cgi?id=188461
+        <rdar://problem/33555052>
+
+        Reviewed by Chris Dumez.
+
+        When we try to schedule shutdown for database, we should cancel the timer so no 
+        scheduleShutdownForClose will be running after this.
+
+        * Modules/indexeddb/server/UniqueIDBDatabase.cpp:
+        (WebCore::IDBServer::UniqueIDBDatabase::scheduleShutdownForClose):
+
 2018-08-10  Daniel Bates  <dabates@apple.com>
 
         Once <object> is hidden, its content won't be displayed again if its URL has fragment identifier ("#").
index 28da2a5..a6fede5 100644 (file)
@@ -273,6 +273,8 @@ void UniqueIDBDatabase::scheduleShutdownForClose()
 {
     ASSERT(isMainThread());
 
+    m_operationAndTransactionTimer.stop();
+
     RELEASE_ASSERT(!m_owningPointerForClose);
     m_owningPointerForClose = m_server.closeAndTakeUniqueIDBDatabase(*this);