Title: [91575] branches/chromium/782/Source/WebCore/storage/IDBRequest.cpp
Revision
91575
Author
[email protected]
Date
2011-07-22 10:55:10 -0700 (Fri, 22 Jul 2011)

Log Message

Merge 91571 - Fix crash in IDBRequest::abort

BUG=89511
Review URL: http://codereview.chromium.org/7488021

Modified Paths

Diff

Modified: branches/chromium/782/Source/WebCore/storage/IDBRequest.cpp (91574 => 91575)


--- branches/chromium/782/Source/WebCore/storage/IDBRequest.cpp	2011-07-22 17:54:32 UTC (rev 91574)
+++ branches/chromium/782/Source/WebCore/storage/IDBRequest.cpp	2011-07-22 17:55:10 UTC (rev 91575)
@@ -66,7 +66,7 @@
 
 IDBRequest::~IDBRequest()
 {
-    ASSERT(m_readyState == DONE || m_readyState == EarlyDeath);
+    ASSERT(m_readyState == DONE || m_readyState == EarlyDeath || !scriptExecutionContext());
     if (m_transaction)
         m_transaction->unregisterRequest(this);
 }
@@ -149,8 +149,11 @@
         ASSERT(m_readyState == DONE);
         return;
     }
+    // FIXME: Remove isDocument check when
+    // https://bugs.webkit.org/show_bug.cgi?id=57789 is resolved.
+    if (!scriptExecutionContext() || !scriptExecutionContext()->isDocument())
+        return;
 
-    ASSERT(scriptExecutionContext()->isDocument());
     EventQueue* eventQueue = static_cast<Document*>(scriptExecutionContext())->eventQueue();
     for (size_t i = 0; i < m_enqueuedEvents.size(); ++i) {
         bool removed = eventQueue->cancelEvent(m_enqueuedEvents[i].get());
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to