Title: [208908] trunk/Source/WebCore
Revision
208908
Author
[email protected]
Date
2016-11-18 16:38:43 -0800 (Fri, 18 Nov 2016)

Log Message

Assertion failures in ActiveDOMObject::~ActiveDOMObject under Database destructor
https://bugs.webkit.org/show_bug.cgi?id=164955
<rdar://problem/29336715>

Reviewed by Brady Eidson.

Make sure the Database's DatabaseContext object is destroyed on the context
thread given that DatabaseContext is an ActiveDOMObject and there is an
assertion in the ActiveDOMObject destructor that it should be destroyed on
on the context thread.

No new tests, already covered by existing tests.

* Modules/webdatabase/Database.cpp:
(WebCore::Database::~Database):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (208907 => 208908)


--- trunk/Source/WebCore/ChangeLog	2016-11-19 00:28:32 UTC (rev 208907)
+++ trunk/Source/WebCore/ChangeLog	2016-11-19 00:38:43 UTC (rev 208908)
@@ -1,3 +1,21 @@
+2016-11-18  Chris Dumez  <[email protected]>
+
+        Assertion failures in ActiveDOMObject::~ActiveDOMObject under Database destructor
+        https://bugs.webkit.org/show_bug.cgi?id=164955
+        <rdar://problem/29336715>
+
+        Reviewed by Brady Eidson.
+
+        Make sure the Database's DatabaseContext object is destroyed on the context
+        thread given that DatabaseContext is an ActiveDOMObject and there is an
+        assertion in the ActiveDOMObject destructor that it should be destroyed on
+        on the context thread.
+
+        No new tests, already covered by existing tests.
+
+        * Modules/webdatabase/Database.cpp:
+        (WebCore::Database::~Database):
+
 2016-11-18  Enrica Casucci  <[email protected]>
 
         Refactor drag and drop for WebKit2 to encode DragData message exchange.

Modified: trunk/Source/WebCore/Modules/webdatabase/Database.cpp (208907 => 208908)


--- trunk/Source/WebCore/Modules/webdatabase/Database.cpp	2016-11-19 00:28:32 UTC (rev 208907)
+++ trunk/Source/WebCore/Modules/webdatabase/Database.cpp	2016-11-19 00:38:43 UTC (rev 208908)
@@ -231,7 +231,7 @@
     if (!m_scriptExecutionContext->isContextThread()) {
         auto passedContext = WTFMove(m_scriptExecutionContext);
         auto& contextRef = passedContext.get();
-        contextRef.postTask({ScriptExecutionContext::Task::CleanupTask, [passedContext = WTFMove(passedContext)] (ScriptExecutionContext& context) {
+        contextRef.postTask({ScriptExecutionContext::Task::CleanupTask, [passedContext = WTFMove(passedContext), databaseContext = WTFMove(m_databaseContext)] (ScriptExecutionContext& context) {
             ASSERT_UNUSED(context, &context == passedContext.ptr());
         }});
     }
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to