ASSIGNED 128487
IDB: storage/indexeddb/mozilla/object-store-remove-values.html fails
https://bugs.webkit.org/show_bug.cgi?id=128487
Summary IDB: storage/indexeddb/mozilla/object-store-remove-values.html fails
Brady Eidson
Reported 2014-02-08 22:09:49 PST
IDB: storage/indexeddb/mozilla/object-store-remove-values.html fails The test does a deleteDatabase and then immediately reopens a connection to that same database name. We don't handle the deleteDatabase cleanup properly in this case.
Attachments
Patch v1 (14.29 KB, patch)
2014-02-10 13:53 PST, Brady Eidson
thorton: review+
Radar WebKit Bug Importer
Comment 1 2014-02-10 13:45:43 PST
Brady Eidson
Comment 2 2014-02-10 13:53:31 PST
Created attachment 223740 [details] Patch v1
WebKit Commit Bot
Comment 3 2014-02-10 13:56:07 PST
Attachment 223740 [details] did not pass style-queue: ERROR: Source/WebKit2/DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:165: This { should be at the end of the previous line [whitespace/braces] [4] Total errors found: 1 in 10 files If any of these errors are false positives, please file a bug against check-webkit-style.
Tim Horton
Comment 4 2014-02-10 14:05:07 PST
Comment on attachment 223740 [details] Patch v1 View in context: https://bugs.webkit.org/attachment.cgi?id=223740&action=review > Source/WebKit2/DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.cpp:62 > + if (m_uniqueIDBDatabase) early return instead? > Source/WebKit2/DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:166 > + while (performNextMainThreadTaskWithoutAdoptRef()) > + { > + } Indentation/brace location looks weird to me. > Source/WebKit2/DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:79 > + JSLockHolder lockHolder(JSLockHolder(m_vm.get())); wut
Mark Hahnenberg
Comment 5 2014-02-10 14:10:26 PST
Comment on attachment 223740 [details] Patch v1 View in context: https://bugs.webkit.org/attachment.cgi?id=223740&action=review >> Source/WebKit2/DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:79 >> + JSLockHolder lockHolder(JSLockHolder(m_vm.get())); > > wut I think you only want one level of JSLockHolder here. It probably works because C++ is auto generating a copy constructor that does something at least somewhat reasonable. JSLockHolder holder(m_vm.get()); should work.
Brady Eidson
Comment 6 2014-02-10 14:11:38 PST
(In reply to comment #5) > (From update of attachment 223740 [details]) > View in context: https://bugs.webkit.org/attachment.cgi?id=223740&action=review > > >> Source/WebKit2/DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:79 > >> + JSLockHolder lockHolder(JSLockHolder(m_vm.get())); > > > > wut > > I think you only want one level of JSLockHolder here. It probably works because C++ is auto generating a copy constructor that does something at least somewhat reasonable. > > JSLockHolder holder(m_vm.get()); > > should work. You are, of course, very correct. *sigh* Just landed in http://trac.webkit.org/changeset/163817 but will followup.
Alexey Proskuryakov
Comment 8 2015-06-03 22:58:13 PDT
Has this been finished? See bug 145623 though.
Note You need to log in before you can comment on or make changes to this bug.