-
jsbell@chromium.org authored
https://bugs.webkit.org/show_bug.cgi?id=108670 Reviewed by Kentaro Hara. Source/WebCore: Prevent IDBDatabase's wrapper from being GC'd while the database is open if it has listeners, as those listeners may close the database in response to events. Also, removed extraneous super-calls from hasPendingActivity() overrides. Test: storage/indexeddb/database-wrapper.html * Modules/indexeddb/IDBDatabase.cpp: (WebCore::IDBDatabase::hasPendingActivity): Implemented. * Modules/indexeddb/IDBDatabase.h: Declared. * Modules/indexeddb/IDBRequest.cpp: (WebCore::IDBRequest::hasPendingActivity): Simplified. * Modules/indexeddb/IDBTransaction.cpp: (WebCore::IDBTransaction::hasPendingActivity): Simplified. LayoutTests: * storage/indexeddb/database-wrapper-expected.txt: Added. * storage/indexeddb/database-wrapper.html: Added. * storage/indexeddb/resources/database-wrapper.js: Added. (test): (openDB): (onUpgradeNeeded): (openSuccess.get request.onsuccess): (onVersionChange): (collectGarbage): (openAgain): (onBlocked): (openAgainSuccess): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@142483 268f45cc-cd09-0410-ab3c-d52691b4dbfc
5323fa0e