Title: [146629] trunk/Source/WebCore
- Revision
- 146629
- Author
- jsb...@chromium.org
- Date
- 2013-03-22 10:41:26 -0700 (Fri, 22 Mar 2013)
Log Message
REGRESSION (r146540?): Crashes in storage/indexeddb/factory-basics-workers.html, storage/indexeddb/transaction-error.html
https://bugs.webkit.org/show_bug.cgi?id=113019
Reviewed by Tony Chang.
Also manifesting flakily under Chromium's content_shell. It's an ASSERT being hit in
the IDBTransaction destructor. The cause was r146540 which allows a stopped context
to reclaim script wrappers. This allows the IDBTransaction to be deref'd at times where
it previously would have just leaked. Modulate the destructor assertions to account
for this case.
No new tests; failures already manifest as flaky crashes in some ports.
* Modules/indexeddb/IDBTransaction.cpp:
(WebCore::IDBTransaction::~IDBTransaction): If context is stopped, expected state
transitions/cleanup may not have occurred before destructor runs.
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (146628 => 146629)
--- trunk/Source/WebCore/ChangeLog 2013-03-22 17:34:20 UTC (rev 146628)
+++ trunk/Source/WebCore/ChangeLog 2013-03-22 17:41:26 UTC (rev 146629)
@@ -1,3 +1,22 @@
+2013-03-22 Joshua Bell <jsb...@chromium.org>
+
+ REGRESSION (r146540?): Crashes in storage/indexeddb/factory-basics-workers.html, storage/indexeddb/transaction-error.html
+ https://bugs.webkit.org/show_bug.cgi?id=113019
+
+ Reviewed by Tony Chang.
+
+ Also manifesting flakily under Chromium's content_shell. It's an ASSERT being hit in
+ the IDBTransaction destructor. The cause was r146540 which allows a stopped context
+ to reclaim script wrappers. This allows the IDBTransaction to be deref'd at times where
+ it previously would have just leaked. Modulate the destructor assertions to account
+ for this case.
+
+ No new tests; failures already manifest as flaky crashes in some ports.
+
+ * Modules/indexeddb/IDBTransaction.cpp:
+ (WebCore::IDBTransaction::~IDBTransaction): If context is stopped, expected state
+ transitions/cleanup may not have occurred before destructor runs.
+
2013-03-22 David Grogan <dgro...@chromium.org>
IndexedDB: Histogram available disk space on attempt to open database
Modified: trunk/Source/WebCore/Modules/indexeddb/IDBTransaction.cpp (146628 => 146629)
--- trunk/Source/WebCore/Modules/indexeddb/IDBTransaction.cpp 2013-03-22 17:34:20 UTC (rev 146628)
+++ trunk/Source/WebCore/Modules/indexeddb/IDBTransaction.cpp 2013-03-22 17:41:26 UTC (rev 146629)
@@ -116,8 +116,8 @@
IDBTransaction::~IDBTransaction()
{
- ASSERT(m_state == Finished);
- ASSERT(m_requestList.isEmpty());
+ ASSERT(m_state == Finished || m_contextStopped);
+ ASSERT(m_requestList.isEmpty() || m_contextStopped);
}
const String& IDBTransaction::mode() const
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes