[webkit-changes] [147381] trunk/Source/WebCore
Title: [147381] trunk/Source/WebCore Revision 147381 Author jsb...@chromium.org Date 2013-04-01 22:29:39 -0700 (Mon, 01 Apr 2013) Log Message [Chromium] IndexedDB: Turn "should only be true in unit tests" comments into ASSERTs https://bugs.webkit.org/show_bug.cgi?id=113597 Reviewed by Adam Barth. In the vein of wkbug.com/111233 and wkbug.com/110820 don't just comment that some condition is true only in unit tests - ASSERT that Chromium's unitTestSupport() is non-null to catch errors during development. Exercised by Chromium's webkit_unit_tests. * Modules/indexeddb/IDBDatabaseBackendImpl.cpp: (WebCore::IDBDatabaseBackendImpl::openConnection): (WebCore::IDBDatabaseBackendImpl::close): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/IDBDatabaseBackendImpl.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (147380 => 147381) --- trunk/Source/WebCore/ChangeLog 2013-04-02 05:06:50 UTC (rev 147380) +++ trunk/Source/WebCore/ChangeLog 2013-04-02 05:29:39 UTC (rev 147381) @@ -1,3 +1,20 @@ +2013-04-01 Joshua Bell + +[Chromium] IndexedDB: Turn "should only be true in unit tests" comments into ASSERTs +https://bugs.webkit.org/show_bug.cgi?id=113597 + +Reviewed by Adam Barth. + +In the vein of wkbug.com/111233 and wkbug.com/110820 don't just comment that +some condition is true only in unit tests - ASSERT that Chromium's unitTestSupport() +is non-null to catch errors during development. + +Exercised by Chromium's webkit_unit_tests. + +* Modules/indexeddb/IDBDatabaseBackendImpl.cpp: +(WebCore::IDBDatabaseBackendImpl::openConnection): +(WebCore::IDBDatabaseBackendImpl::close): + 2013-04-01 Roger Fong VS2010 WebCoreGenerated build scripts should use new feature-defines script. Modified: trunk/Source/WebCore/Modules/indexeddb/IDBDatabaseBackendImpl.cpp (147380 => 147381) --- trunk/Source/WebCore/Modules/indexeddb/IDBDatabaseBackendImpl.cpp 2013-04-02 05:06:50 UTC (rev 147380) +++ trunk/Source/WebCore/Modules/indexeddb/IDBDatabaseBackendImpl.cpp 2013-04-02 05:29:39 UTC (rev 147381) @@ -38,6 +38,9 @@ #include "IDBTransactionBackendImpl.h" #include "IDBTransactionCoordinator.h" #include "SharedBuffer.h" +#if PLATFORM(CHROMIUM) +#include +#endif #include namespace WebCore { @@ -1212,6 +1215,9 @@ if (version == IDBDatabaseMetadata::DefaultIntVersion) { // For unit tests only - skip upgrade steps. Calling from script with DefaultIntVersion throws exception. +#if PLATFORM(CHROMIUM) +ASSERT(WebKit::Platform::current()->unitTestSupport()); +#endif ASSERT(isNewDatabase); m_databaseCallbacksSet.add(databaseCallbacks); callbacks->onSuccess(this, this->metadata()); @@ -1348,7 +1354,13 @@ ASSERT(m_transactions.isEmpty()); m_backingStore.clear(); -// This check should only be false in tests. + +// This check should only be false in unit tests. +#if PLATFORM(CHROMIUM) +ASSERT(m_factory || WebKit::Platform::current()->unitTestSupport()); +#else +ASSERT(m_factory); +#endif if (m_factory) m_factory->removeIDBDatabaseBackend(m_identifier); } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [147254] trunk/LayoutTests
Title: [147254] trunk/LayoutTests Revision 147254 Author jsb...@chromium.org Date 2013-03-29 15:10:06 -0700 (Fri, 29 Mar 2013) Log Message [Chromium] IndexedDB: Update terminated worker connection test https://bugs.webkit.org/show_bug.cgi?id=113608 Reviewed by Tony Chang. Update layout test only run under Chromium's content_shell that ensures that worker termination does not result in stuck connections. The test was using the obsolete setVersion() API. * storage/indexeddb/pending-version-change-stuck-works-with-terminate-expected.txt: * storage/indexeddb/pending-version-change-stuck-works-with-terminate.html: * storage/indexeddb/resources/pending-version-change-stuck.js: (test.request.onblocked): (test): Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/storage/indexeddb/pending-version-change-stuck-works-with-terminate-expected.txt trunk/LayoutTests/storage/indexeddb/pending-version-change-stuck-works-with-terminate.html trunk/LayoutTests/storage/indexeddb/resources/pending-version-change-stuck.js Diff Modified: trunk/LayoutTests/ChangeLog (147253 => 147254) --- trunk/LayoutTests/ChangeLog 2013-03-29 21:56:45 UTC (rev 147253) +++ trunk/LayoutTests/ChangeLog 2013-03-29 22:10:06 UTC (rev 147254) @@ -1,3 +1,20 @@ +2013-03-29 Joshua Bell + +[Chromium] IndexedDB: Update terminated worker connection test +https://bugs.webkit.org/show_bug.cgi?id=113608 + +Reviewed by Tony Chang. + +Update layout test only run under Chromium's content_shell that ensures that +worker termination does not result in stuck connections. The test was using +the obsolete setVersion() API. + +* storage/indexeddb/pending-version-change-stuck-works-with-terminate-expected.txt: +* storage/indexeddb/pending-version-change-stuck-works-with-terminate.html: +* storage/indexeddb/resources/pending-version-change-stuck.js: +(test.request.onblocked): +(test): + 2013-03-29 Bem Jones-Bey [CSS Exclusions] shape outside segments not properly calculated for ellipses Modified: trunk/LayoutTests/storage/indexeddb/pending-version-change-stuck-works-with-terminate-expected.txt (147253 => 147254) --- trunk/LayoutTests/storage/indexeddb/pending-version-change-stuck-works-with-terminate-expected.txt 2013-03-29 21:56:45 UTC (rev 147253) +++ trunk/LayoutTests/storage/indexeddb/pending-version-change-stuck-works-with-terminate-expected.txt 2013-03-29 22:10:06 UTC (rev 147254) @@ -1,11 +1,12 @@ -Explicitly terminating worker with blocked setVersion call should allow later open calls to proceed +Explicitly terminating worker with blocked call should allow later open calls to proceed On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". indexedDB = self.indexedDB || self.webkitIndexedDB || self.mozIndexedDB || self.msIndexedDB || self.OIndexedDB; -request = indexedDB.open("pending-version-change-stuck-works-with-terminate.html") +dbname = "pending-version-change-stuck-works-with-terminate.html" +indexedDB.open(dbname) PASS Open worked after page reload. PASS successfullyParsed is true Modified: trunk/LayoutTests/storage/indexeddb/pending-version-change-stuck-works-with-terminate.html (147253 => 147254) --- trunk/LayoutTests/storage/indexeddb/pending-version-change-stuck-works-with-terminate.html 2013-03-29 21:56:45 UTC (rev 147253) +++ trunk/LayoutTests/storage/indexeddb/pending-version-change-stuck-works-with-terminate.html 2013-03-29 22:10:06 UTC (rev 147254) @@ -6,28 +6,45 @@
[webkit-changes] [147244] trunk/Source/WebCore
Title: [147244] trunk/Source/WebCore Revision 147244 Author jsb...@chromium.org Date 2013-03-29 12:56:59 -0700 (Fri, 29 Mar 2013) Log Message IndexedDB: Use WTF::TemporaryChange rather than manually resetting a flag https://bugs.webkit.org/show_bug.cgi?id=113594 Reviewed by Tony Chang. Split out from another patch: rather than m_foo = true; ... m_foo = false; use the handy WTF::TemporaryChange scoped variable change doohickey. Test: http/tests/inspector/indexeddb/database-structure.html * Modules/indexeddb/IDBDatabaseBackendImpl.cpp: (WebCore::IDBDatabaseBackendImpl::close): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/IDBDatabaseBackendImpl.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (147243 => 147244) --- trunk/Source/WebCore/ChangeLog 2013-03-29 19:51:22 UTC (rev 147243) +++ trunk/Source/WebCore/ChangeLog 2013-03-29 19:56:59 UTC (rev 147244) @@ -1,5 +1,20 @@ 2013-03-29 Joshua Bell +IndexedDB: Use WTF::TemporaryChange rather than manually resetting a flag +https://bugs.webkit.org/show_bug.cgi?id=113594 + +Reviewed by Tony Chang. + +Split out from another patch: rather than m_foo = true; ... m_foo = false; use +the handy WTF::TemporaryChange scoped variable change doohickey. + +Test: http/tests/inspector/indexeddb/database-structure.html + +* Modules/indexeddb/IDBDatabaseBackendImpl.cpp: +(WebCore::IDBDatabaseBackendImpl::close): + +2013-03-29 Joshua Bell + [V8] IndexedDB: Exceptions thrown inconsistently for non-cloneable values https://bugs.webkit.org/show_bug.cgi?id=113091 Modified: trunk/Source/WebCore/Modules/indexeddb/IDBDatabaseBackendImpl.cpp (147243 => 147244) --- trunk/Source/WebCore/Modules/indexeddb/IDBDatabaseBackendImpl.cpp 2013-03-29 19:51:22 UTC (rev 147243) +++ trunk/Source/WebCore/Modules/indexeddb/IDBDatabaseBackendImpl.cpp 2013-03-29 19:56:59 UTC (rev 147244) @@ -38,6 +38,7 @@ #include "IDBTransactionBackendImpl.h" #include "IDBTransactionCoordinator.h" #include "SharedBuffer.h" +#include namespace WebCore { @@ -1334,7 +1335,7 @@ // To avoid that situation, don't proceed in case of reentrancy. if (m_closingConnection) return; -m_closingConnection = true; +TemporaryChange closingConnection(m_closingConnection, true); processPendingCalls(); // FIXME: Add a test for the m_pendingOpenCalls cases below. @@ -1351,7 +1352,6 @@ if (m_factory) m_factory->removeIDBDatabaseBackend(m_identifier); } -m_closingConnection = false; } void CreateObjectStoreAbortOperation::perform(IDBTransactionBackendImpl* transaction) ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [147241] trunk
Title: [147241] trunk Revision 147241 Author jsb...@chromium.org Date 2013-03-29 12:36:38 -0700 (Fri, 29 Mar 2013) Log Message [V8] IndexedDB: Exceptions thrown inconsistently for non-cloneable values https://bugs.webkit.org/show_bug.cgi?id=113091 Reviewed by Kentaro Hara. Source/WebCore: The exception thrown by SerializedScriptValue into the JS engine is not observable by ScriptState. (We should fix that, but it appears non-trivial.) Ask the SerializedScriptValue directly if it failed to clone. If so, don't set an exception - one was already set so let that be processed normally. Test: storage/indexeddb/clone-exception.html * Modules/indexeddb/IDBObjectStore.cpp: (WebCore::IDBObjectStore::put): LayoutTests: * storage/indexeddb/clone-exception-expected.txt: Added. * storage/indexeddb/clone-exception.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/IDBObjectStore.cpp Added Paths trunk/LayoutTests/storage/indexeddb/clone-exception-expected.txt trunk/LayoutTests/storage/indexeddb/clone-exception.html Diff Modified: trunk/LayoutTests/ChangeLog (147240 => 147241) --- trunk/LayoutTests/ChangeLog 2013-03-29 19:31:45 UTC (rev 147240) +++ trunk/LayoutTests/ChangeLog 2013-03-29 19:36:38 UTC (rev 147241) @@ -1,3 +1,13 @@ +2013-03-29 Joshua Bell + +[V8] IndexedDB: Exceptions thrown inconsistently for non-cloneable values +https://bugs.webkit.org/show_bug.cgi?id=113091 + +Reviewed by Kentaro Hara. + +* storage/indexeddb/clone-exception-expected.txt: Added. +* storage/indexeddb/clone-exception.html: Added. + 2013-03-29 Greg Hughes Allow multiple searchKeys to be passed to AXUIElementCopyParameterizedAttributeValue Added: trunk/LayoutTests/storage/indexeddb/clone-exception-expected.txt (0 => 147241) --- trunk/LayoutTests/storage/indexeddb/clone-exception-expected.txt (rev 0) +++ trunk/LayoutTests/storage/indexeddb/clone-exception-expected.txt 2013-03-29 19:36:38 UTC (rev 147241) @@ -0,0 +1,37 @@ +Ensure DataCloneError is consistently thrown by IndexedDB methods + +On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". + + +dbname = "clone-exception.html" + +doFirstOpen(): +indexedDB.open(dbname + '1') + +onUpgradeNeeded(): +Expecting exception from db.createObjectStore('store').put(NON_CLONEABLE, 0); +PASS Exception was thrown. +PASS code is 25 +PASS ename is 'DataCloneError' + +doSecondOpen(): +indexedDB.open(dbname + '2') + +onUpgradeNeeded(): +Expecting exception from db.createObjectStore('store').put(NON_CLONEABLE, 0); +PASS Exception was thrown. +PASS code is 25 +PASS ename is 'DataCloneError' + +doThirdOpen(): +indexedDB.open(dbname + '3') + +onUpgradeNeeded(): +Expecting exception from db.createObjectStore('store').put(NON_CLONEABLE, INVALID_KEY); +PASS Exception was thrown. +PASS code is 25 +PASS ename is 'DataCloneError' +PASS successfullyParsed is true + +TEST COMPLETE + Added: trunk/LayoutTests/storage/indexeddb/clone-exception.html (0 => 147241) --- trunk/LayoutTests/storage/indexeddb/clone-exception.html (rev 0) +++ trunk/LayoutTests/storage/indexeddb/clone-exception.html 2013-03-29 19:36:38 UTC (rev 147241) @@ -0,0 +1,51 @@ + + + +description("Ensure DataCloneError is consistently thrown by IndexedDB methods"); + +var NON_CLONEABLE = self; +var INVALID_KEY = {}; + +setDBNameFromPath(); +doFirstOpen(); + +function doFirstOpen() +{ +preamble(); +request = evalAndLog("indexedDB.open(dbname + '1')"); +request._onupgradeneeded_ = function onUpgradeNeeded(e) { +preamble(); +db = e.target.result; +evalAndExpectException("db.createObjectStore('store').put(NON_CLONEABLE, 0);", "25", "'DataCloneError'"); +doSecondOpen(); +}; +} + +function doSecondOpen() +{ +preamble(); +request = evalAndLog("indexedDB.open(dbname + '2')"); +request._onupgradeneeded_ = function onUpgradeNeeded(e) { +preamble(); +db = e.target.result; +evalAndExpectException("db.createObjectStore('store').put(NON_CLONEABLE, 0);", "25", "'DataCloneError'"); +doThirdOpen(); +}; +} + +function doThirdOpen() +{ +preamble(); +request = evalAndLog("indexedDB.open(dbname + '3')"); +request._onupgradeneeded_ = function onUpgradeNeeded(e) { +preamble(); +db = e.target.result; +evalAndExpectException("db.createObjectStore('store').put(NON_CLONEABLE, INVALID_KEY);", "25", "'DataCloneError'"); +finishJSTest(); +}; +} + + +
[webkit-changes] [147233] trunk/Source
Title: [147233] trunk/Source Revision 147233 Author jsb...@chromium.org Date 2013-03-29 12:12:04 -0700 (Fri, 29 Mar 2013) Log Message IndexedDB: Bind lifetime of in-memory backing stores to IDBFactory backend https://bugs.webkit.org/show_bug.cgi?id=110820 Reviewed by Tony Chang. Source/WebCore: Backing stores are dropped as soon as all connections are closed. That makes sense for disk-backed stores to free up memory (although there's a performance trade-off...). But for memory-backed stores, the expected lifetime should match the lifetime of the factory so that an open/write/close/re-open/read yields the written data. Test: Chromium's webkit_unit_tests, IDBFactoryBackendTest.MemoryBackingStoreLifetime * Modules/indexeddb/IDBBackingStore.cpp: (WebCore::IDBBackingStore::IDBBackingStore): Pass comparator into constructor since it was always assigned immediately afterwards anyway. (WebCore::IDBBackingStore::open): Split into three parts - open() which is disk-backed... (WebCore::IDBBackingStore::openInMemory): ...explit in-memory creation (previously: specified by empty path) (WebCore::IDBBackingStore::create): ... and the common logic which calls the constructor. * Modules/indexeddb/IDBBackingStore.h: Headers for the above. * Modules/indexeddb/IDBFactoryBackendImpl.cpp: (WebCore::IDBFactoryBackendImpl::openBackingStore): Add in-memory backing stores to dependent set. * Modules/indexeddb/IDBFactoryBackendImpl.h: Add member to track dependent backing stores. Source/WebKit/chromium: * tests/IDBBackingStoreTest.cpp: (WebCore::IDBBackingStoreTest::SetUp): Use openInMemory rather than empty path. (WebCore::TEST): Added IDBFactoryBackendTest.MemoryBackingStoreLifetime to verify refs. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/IDBBackingStore.cpp trunk/Source/WebCore/Modules/indexeddb/IDBBackingStore.h trunk/Source/WebCore/Modules/indexeddb/IDBFactoryBackendImpl.cpp trunk/Source/WebCore/Modules/indexeddb/IDBFactoryBackendImpl.h trunk/Source/WebKit/chromium/ChangeLog trunk/Source/WebKit/chromium/tests/IDBBackingStoreTest.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (147232 => 147233) --- trunk/Source/WebCore/ChangeLog 2013-03-29 18:54:24 UTC (rev 147232) +++ trunk/Source/WebCore/ChangeLog 2013-03-29 19:12:04 UTC (rev 147233) @@ -1,3 +1,28 @@ +2013-03-29 Joshua Bell + +IndexedDB: Bind lifetime of in-memory backing stores to IDBFactory backend +https://bugs.webkit.org/show_bug.cgi?id=110820 + +Reviewed by Tony Chang. + +Backing stores are dropped as soon as all connections are closed. That makes sense for +disk-backed stores to free up memory (although there's a performance trade-off...). But +for memory-backed stores, the expected lifetime should match the lifetime of the factory +so that an open/write/close/re-open/read yields the written data. + +Test: Chromium's webkit_unit_tests, IDBFactoryBackendTest.MemoryBackingStoreLifetime + +* Modules/indexeddb/IDBBackingStore.cpp: +(WebCore::IDBBackingStore::IDBBackingStore): Pass comparator into constructor since it was always +assigned immediately afterwards anyway. +(WebCore::IDBBackingStore::open): Split into three parts - open() which is disk-backed... +(WebCore::IDBBackingStore::openInMemory): ...explit in-memory creation (previously: specified by empty path) +(WebCore::IDBBackingStore::create): ... and the common logic which calls the constructor. +* Modules/indexeddb/IDBBackingStore.h: Headers for the above. +* Modules/indexeddb/IDBFactoryBackendImpl.cpp: +(WebCore::IDBFactoryBackendImpl::openBackingStore): Add in-memory backing stores to dependent set. +* Modules/indexeddb/IDBFactoryBackendImpl.h: Add member to track dependent backing stores. + 2013-03-29 Nate Chapin ASSERT d->m_defersLoading != defers on detik.com and drive.google.com Modified: trunk/Source/WebCore/Modules/indexeddb/IDBBackingStore.cpp (147232 => 147233) --- trunk/Source/WebCore/Modules/indexeddb/IDBBackingStore.cpp 2013-03-29 18:54:24 UTC (rev 147232) +++ trunk/Source/WebCore/Modules/indexeddb/IDBBackingStore.cpp 2013-03-29 19:12:04 UTC (rev 147233) @@ -43,6 +43,9 @@ #include "LevelDBTransaction.h" #include "SecurityOrigin.h" #include "SharedBuffer.h" +#if PLATFORM(CHROMIUM) +#include +#endif #include namespace WebCore { @@ -335,9 +338,10 @@ } }; -IDBBackingStore::IDBBackingStore(const String& identifier, PassOwnPtr db) +IDBBackingStore::IDBBackingStore(const String& identifier, PassOwnPtr db, PassOwnPtr comparator) : m_identifier(identifier) , m_db(db) +, m_comparator(comparator) , m_weakFactory(this) { } @@ -345,6 +349,10 @@ IDBBackingStore::IDBBackingStore() : m_weakFactory(this) { +// This constructor should only be used in unit tests. +#if PLATFORM(CHROMIUM) +ASSERT(WebKit::Platform::current()->unitTestSuppo
[webkit-changes] [146629] trunk/Source/WebCore
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 trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/IDBTransaction.cpp 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 + +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 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
[webkit-changes] [146540] trunk/Source/WebCore
Title: [146540] trunk/Source/WebCore Revision 146540 Author jsb...@chromium.org Date 2013-03-21 16:52:16 -0700 (Thu, 21 Mar 2013) Log Message IndexedDB: Ensure script wrappers can be collected after context is stopped https://bugs.webkit.org/show_bug.cgi?id=112976 Reviewed by Adam Barth. ActiveDOMObject::hasPendingActivity is called to see if script wrappers can be disposed of. Once the script execution context has stopped they should be free to go - include this in the checks. No new tests - suggestions welcome. * Modules/indexeddb/IDBDatabase.cpp: (WebCore::IDBDatabase::hasPendingActivity): Return false if stopped. (WebCore::IDBDatabase::stop): Don't bother calling empty super impl. * Modules/indexeddb/IDBRequest.cpp: (WebCore::IDBRequest::hasPendingActivity): Return false if stopped. (WebCore::IDBRequest::stop): Don't bother calling empty super impl. * Modules/indexeddb/IDBTransaction.cpp: (WebCore::IDBTransaction::hasPendingActivity): Return false if stopped. (WebCore::IDBTransaction::stop): Don't bother calling empty super impl. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/IDBDatabase.cpp trunk/Source/WebCore/Modules/indexeddb/IDBRequest.cpp trunk/Source/WebCore/Modules/indexeddb/IDBTransaction.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (146539 => 146540) --- trunk/Source/WebCore/ChangeLog 2013-03-21 23:47:56 UTC (rev 146539) +++ trunk/Source/WebCore/ChangeLog 2013-03-21 23:52:16 UTC (rev 146540) @@ -1,3 +1,26 @@ +2013-03-21 Joshua Bell + +IndexedDB: Ensure script wrappers can be collected after context is stopped +https://bugs.webkit.org/show_bug.cgi?id=112976 + +Reviewed by Adam Barth. + +ActiveDOMObject::hasPendingActivity is called to see if script wrappers +can be disposed of. Once the script execution context has stopped they +should be free to go - include this in the checks. + +No new tests - suggestions welcome. + +* Modules/indexeddb/IDBDatabase.cpp: +(WebCore::IDBDatabase::hasPendingActivity): Return false if stopped. +(WebCore::IDBDatabase::stop): Don't bother calling empty super impl. +* Modules/indexeddb/IDBRequest.cpp: +(WebCore::IDBRequest::hasPendingActivity): Return false if stopped. +(WebCore::IDBRequest::stop): Don't bother calling empty super impl. +* Modules/indexeddb/IDBTransaction.cpp: +(WebCore::IDBTransaction::hasPendingActivity): Return false if stopped. +(WebCore::IDBTransaction::stop): Don't bother calling empty super impl. + 2013-03-21 Russell McClellan Remove upcastPointer from ActiveDOMObject constructor Modified: trunk/Source/WebCore/Modules/indexeddb/IDBDatabase.cpp (146539 => 146540) --- trunk/Source/WebCore/Modules/indexeddb/IDBDatabase.cpp 2013-03-21 23:47:56 UTC (rev 146539) +++ trunk/Source/WebCore/Modules/indexeddb/IDBDatabase.cpp 2013-03-21 23:52:16 UTC (rev 146540) @@ -352,12 +352,11 @@ { // The script wrapper must not be collected before the object is closed or // we can't fire a "versionchange" event to let script manually close the connection. -return !m_closePending && !m_eventTargetData.eventListenerMap.isEmpty(); +return !m_closePending && !m_eventTargetData.eventListenerMap.isEmpty() && !m_contextStopped; } void IDBDatabase::stop() { -ActiveDOMObject::stop(); // Stop fires at a deterministic time, so we need to call close in it. close(); Modified: trunk/Source/WebCore/Modules/indexeddb/IDBRequest.cpp (146539 => 146540) --- trunk/Source/WebCore/Modules/indexeddb/IDBRequest.cpp 2013-03-21 23:47:56 UTC (rev 146539) +++ trunk/Source/WebCore/Modules/indexeddb/IDBRequest.cpp 2013-03-21 23:52:16 UTC (rev 146540) @@ -420,12 +420,11 @@ // FIXME: In an ideal world, we should return true as long as anyone has a or can //get a handle to us and we have event listeners. This is order to handle //user generated events properly. -return m_hasPendingActivity; +return m_hasPendingActivity && !m_contextStopped; } void IDBRequest::stop() { -ActiveDOMObject::stop(); if (m_contextStopped) return; Modified: trunk/Source/WebCore/Modules/indexeddb/IDBTransaction.cpp (146539 => 146540) --- trunk/Source/WebCore/Modules/indexeddb/IDBTransaction.cpp 2013-03-21 23:47:56 UTC (rev 146539) +++ trunk/Source/WebCore/Modules/indexeddb/IDBTransaction.cpp 2013-03-21 23:52:16 UTC (rev 146540) @@ -333,7 +333,7 @@ // FIXME: In an ideal world, we should return true as long as anyone has a or can //get a handle to us or any child request object and any of those have //event listeners. This is in order to handle user generated events properly. -return m_hasPendingActivity; +return m_hasPendingActivity && !m_contextStopped; } IndexedDB::TransactionMode IDBTransaction::stringToMode(const String& modeString, ScriptExecutionContext* co
[webkit-changes] [146527] trunk/Source/WebCore
Title: [146527] trunk/Source/WebCore Revision 146527 Author jsb...@chromium.org Date 2013-03-21 14:53:35 -0700 (Thu, 21 Mar 2013) Log Message IndexedDB: Ensure all API methods have IDB_TRACE macros https://bugs.webkit.org/show_bug.cgi?id=112963 Reviewed by Tony Chang. Anntotate methods and callbacks that weren't already annotated with IDB_TRACE macros to assist in debugging, e.g. when using the chromium port's chrome://tracing visualization. No new tests - just harmless diagnostic sprinkles. * Modules/indexeddb/IDBDatabase.cpp: (WebCore::IDBDatabase::createObjectStore): Added IDB_TRACE macro call here. (WebCore::IDBDatabase::deleteObjectStore): ...and here. (WebCore::IDBDatabase::transaction): ...etc. (WebCore::IDBDatabase::close): (WebCore::IDBDatabase::onVersionChange): * Modules/indexeddb/IDBFactory.cpp: (WebCore::IDBFactory::getDatabaseNames): (WebCore::IDBFactory::open): (WebCore::IDBFactory::deleteDatabase): * Modules/indexeddb/IDBFactoryBackendImpl.cpp: (WebCore::IDBFactoryBackendImpl::getDatabaseNames): (WebCore::IDBFactoryBackendImpl::deleteDatabase): (WebCore::IDBFactoryBackendImpl::open): * Modules/indexeddb/IDBOpenDBRequest.cpp: (WebCore::IDBOpenDBRequest::onBlocked): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/IDBDatabase.cpp trunk/Source/WebCore/Modules/indexeddb/IDBFactory.cpp trunk/Source/WebCore/Modules/indexeddb/IDBFactoryBackendImpl.cpp trunk/Source/WebCore/Modules/indexeddb/IDBOpenDBRequest.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (146526 => 146527) --- trunk/Source/WebCore/ChangeLog 2013-03-21 21:52:15 UTC (rev 146526) +++ trunk/Source/WebCore/ChangeLog 2013-03-21 21:53:35 UTC (rev 146527) @@ -1,3 +1,33 @@ +2013-03-21 Joshua Bell + +IndexedDB: Ensure all API methods have IDB_TRACE macros +https://bugs.webkit.org/show_bug.cgi?id=112963 + +Reviewed by Tony Chang. + +Anntotate methods and callbacks that weren't already annotated +with IDB_TRACE macros to assist in debugging, e.g. when using +the chromium port's chrome://tracing visualization. + +No new tests - just harmless diagnostic sprinkles. + +* Modules/indexeddb/IDBDatabase.cpp: +(WebCore::IDBDatabase::createObjectStore): Added IDB_TRACE macro call here. +(WebCore::IDBDatabase::deleteObjectStore): ...and here. +(WebCore::IDBDatabase::transaction): ...etc. +(WebCore::IDBDatabase::close): +(WebCore::IDBDatabase::onVersionChange): +* Modules/indexeddb/IDBFactory.cpp: +(WebCore::IDBFactory::getDatabaseNames): +(WebCore::IDBFactory::open): +(WebCore::IDBFactory::deleteDatabase): +* Modules/indexeddb/IDBFactoryBackendImpl.cpp: +(WebCore::IDBFactoryBackendImpl::getDatabaseNames): +(WebCore::IDBFactoryBackendImpl::deleteDatabase): +(WebCore::IDBFactoryBackendImpl::open): +* Modules/indexeddb/IDBOpenDBRequest.cpp: +(WebCore::IDBOpenDBRequest::onBlocked): + 2013-03-21 Christian Biesinger http://trac.webkit.org/changeset/146375 causing CrOS crashes Modified: trunk/Source/WebCore/Modules/indexeddb/IDBDatabase.cpp (146526 => 146527) --- trunk/Source/WebCore/Modules/indexeddb/IDBDatabase.cpp 2013-03-21 21:52:15 UTC (rev 146526) +++ trunk/Source/WebCore/Modules/indexeddb/IDBDatabase.cpp 2013-03-21 21:53:35 UTC (rev 146527) @@ -159,6 +159,7 @@ PassRefPtr IDBDatabase::createObjectStore(const String& name, const IDBKeyPath& keyPath, bool autoIncrement, ExceptionCode& ec) { +IDB_TRACE("IDBDatabase::createObjectStore"); HistogramSupport::histogramEnumeration("WebCore.IndexedDB.FrontEndAPICalls", IDBCreateObjectStoreCall, IDBMethodsMax); if (!m_versionChangeTransaction) { ec = IDBDatabaseException::InvalidStateError; @@ -198,6 +199,7 @@ void IDBDatabase::deleteObjectStore(const String& name, ExceptionCode& ec) { +IDB_TRACE("IDBDatabase::deleteObjectStore"); HistogramSupport::histogramEnumeration("WebCore.IndexedDB.FrontEndAPICalls", IDBDeleteObjectStoreCall, IDBMethodsMax); if (!m_versionChangeTransaction) { ec = IDBDatabaseException::InvalidStateError; @@ -221,6 +223,7 @@ PassRefPtr IDBDatabase::transaction(ScriptExecutionContext* context, const Vector& scope, const String& modeString, ExceptionCode& ec) { +IDB_TRACE("IDBDatabase::transaction"); HistogramSupport::histogramEnumeration("WebCore.IndexedDB.FrontEndAPICalls", IDBTransactionCall, IDBMethodsMax); if (!scope.size()) { ec = IDBDatabaseException::InvalidAccessError; @@ -269,6 +272,7 @@ void IDBDatabase::close() { +IDB_TRACE("IDBDatabase::close"); if (m_closePending) return; @@ -301,6 +305,7 @@ void IDBDatabase::onVersionChange(int64_t oldVersion, int64_t newVersion) { +IDB_TRACE("IDBDatabase::onVersionChange"); if (m_contextStopped || !scriptExecutionContext()) return; Modified: trunk/Source/Web
[webkit-changes] [146511] trunk/Source
Title: [146511] trunk/Source Revision 146511 Author jsb...@chromium.org Date 2013-03-21 13:43:58 -0700 (Thu, 21 Mar 2013) Log Message IndexedDB: Remove onVersionChange(string) plumbing https://bugs.webkit.org/show_bug.cgi?id=112712 Reviewed by Adam Barth. Source/WebCore: Delete unused onVersionChange(string) overload. No new tests - just deleting dead code. * Modules/indexeddb/IDBDatabase.cpp: Delete onVersionChange(string) overload. * Modules/indexeddb/IDBDatabase.h: Ditto. * Modules/indexeddb/IDBDatabaseBackendImpl.cpp: Ditto. * Modules/indexeddb/IDBDatabaseCallbacks.h: Ditto. * Modules/indexeddb/IDBDatabaseCallbacksImpl.cpp: Ditto. * Modules/indexeddb/IDBDatabaseCallbacksImpl.h: Ditto. Source/WebKit/chromium: * public/WebIDBDatabaseCallbacks.h: Remove onVersionChange(string) overload. * src/IDBDatabaseCallbacksProxy.cpp: Ditto. * src/IDBDatabaseCallbacksProxy.h: Ditto. * src/WebIDBDatabaseCallbacksImpl.cpp: Ditto. * src/WebIDBDatabaseCallbacksImpl.h: Ditto. * tests/IDBAbortOnCorruptTest.cpp: Ditto. * tests/IDBDatabaseBackendTest.cpp: Ditto. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/IDBDatabase.cpp trunk/Source/WebCore/Modules/indexeddb/IDBDatabase.h trunk/Source/WebCore/Modules/indexeddb/IDBDatabaseCallbacks.h trunk/Source/WebCore/Modules/indexeddb/IDBDatabaseCallbacksImpl.cpp trunk/Source/WebCore/Modules/indexeddb/IDBDatabaseCallbacksImpl.h trunk/Source/WebKit/chromium/ChangeLog trunk/Source/WebKit/chromium/public/WebIDBDatabaseCallbacks.h trunk/Source/WebKit/chromium/src/IDBDatabaseCallbacksProxy.cpp trunk/Source/WebKit/chromium/src/IDBDatabaseCallbacksProxy.h trunk/Source/WebKit/chromium/src/WebIDBDatabaseCallbacksImpl.cpp trunk/Source/WebKit/chromium/src/WebIDBDatabaseCallbacksImpl.h trunk/Source/WebKit/chromium/tests/IDBAbortOnCorruptTest.cpp trunk/Source/WebKit/chromium/tests/IDBDatabaseBackendTest.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (146510 => 146511) --- trunk/Source/WebCore/ChangeLog 2013-03-21 20:35:36 UTC (rev 146510) +++ trunk/Source/WebCore/ChangeLog 2013-03-21 20:43:58 UTC (rev 146511) @@ -1,3 +1,21 @@ +2013-03-21 Joshua Bell + +IndexedDB: Remove onVersionChange(string) plumbing +https://bugs.webkit.org/show_bug.cgi?id=112712 + +Reviewed by Adam Barth. + +Delete unused onVersionChange(string) overload. + +No new tests - just deleting dead code. + +* Modules/indexeddb/IDBDatabase.cpp: Delete onVersionChange(string) overload. +* Modules/indexeddb/IDBDatabase.h: Ditto. +* Modules/indexeddb/IDBDatabaseBackendImpl.cpp: Ditto. +* Modules/indexeddb/IDBDatabaseCallbacks.h: Ditto. +* Modules/indexeddb/IDBDatabaseCallbacksImpl.cpp: Ditto. +* Modules/indexeddb/IDBDatabaseCallbacksImpl.h: Ditto. + 2013-03-21 Philip Rogers Correct bisector angle calculation for markers Modified: trunk/Source/WebCore/Modules/indexeddb/IDBDatabase.cpp (146510 => 146511) --- trunk/Source/WebCore/Modules/indexeddb/IDBDatabase.cpp 2013-03-21 20:35:36 UTC (rev 146510) +++ trunk/Source/WebCore/Modules/indexeddb/IDBDatabase.cpp 2013-03-21 20:43:58 UTC (rev 146511) @@ -311,18 +311,6 @@ enqueueEvent(IDBVersionChangeEvent::create(IDBAny::create(oldVersion), newVersionAny.release(), eventNames().versionchangeEvent)); } -void IDBDatabase::onVersionChange(const String& newVersion) -{ -if (m_contextStopped || !scriptExecutionContext()) -return; - -if (m_closePending) -return; - -RefPtr newVersionAny = newVersion.isEmpty() ? IDBAny::createNull() : IDBAny::createString(newVersion); -enqueueEvent(IDBVersionChangeEvent::create(version(), newVersionAny.release(), eventNames().versionchangeEvent)); -} - void IDBDatabase::enqueueEvent(PassRefPtr event) { ASSERT(!m_contextStopped); Modified: trunk/Source/WebCore/Modules/indexeddb/IDBDatabase.h (146510 => 146511) --- trunk/Source/WebCore/Modules/indexeddb/IDBDatabase.h 2013-03-21 20:35:36 UTC (rev 146510) +++ trunk/Source/WebCore/Modules/indexeddb/IDBDatabase.h 2013-03-21 20:43:58 UTC (rev 146511) @@ -77,7 +77,6 @@ // IDBDatabaseCallbacks virtual void onVersionChange(int64_t oldVersion, int64_t newVersion); -virtual void onVersionChange(const String& requestedVersion); virtual void onAbort(int64_t, PassRefPtr); virtual void onComplete(int64_t); Modified: trunk/Source/WebCore/Modules/indexeddb/IDBDatabaseCallbacks.h (146510 => 146511) --- trunk/Source/WebCore/Modules/indexeddb/IDBDatabaseCallbacks.h 2013-03-21 20:35:36 UTC (rev 146510) +++ trunk/Source/WebCore/Modules/indexeddb/IDBDatabaseCallbacks.h 2013-03-21 20:43:58 UTC (rev 146511) @@ -39,7 +39,6 @@ virtual ~IDBDatabaseCallbacks() { } virtual void onForcedClose() = 0; -virtual void onVersionChange(const String& version) = 0; virtual void onVersionChange(int64_t oldVersion, int64_t newVersion) = 0; virtual void onAbort(int64_t transactionId, Pas
[webkit-changes] [146232] trunk/LayoutTests
Title: [146232] trunk/LayoutTests Revision 146232 Author jsb...@chromium.org Date 2013-03-19 12:03:07 -0700 (Tue, 19 Mar 2013) Log Message [Chromium] IndexedDB: index-duplicate-keypaths test is flaky under content_shell https://bugs.webkit.org/show_bug.cgi?id=112723 Reviewed by Tony Chang. Root cause is a race between the "versionchange" transaction's "complete" event being dispatched to script and the "success" call arriving from the back-end which updates the metadata. Tracked as https://bugs.webkit.org/show_bug.cgi?id=111642 * storage/indexeddb/resources/index-duplicate-keypaths.js: (testCollideAutoIncrementSetup): Trigger test from open's onsuccess... (testCollideAutoIncrement): ... rather than transaction's oncomplete. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/storage/indexeddb/resources/index-duplicate-keypaths.js Diff Modified: trunk/LayoutTests/ChangeLog (146231 => 146232) --- trunk/LayoutTests/ChangeLog 2013-03-19 18:59:49 UTC (rev 146231) +++ trunk/LayoutTests/ChangeLog 2013-03-19 19:03:07 UTC (rev 146232) @@ -1,3 +1,18 @@ +2013-03-19 Joshua Bell + +[Chromium] IndexedDB: index-duplicate-keypaths test is flaky under content_shell +https://bugs.webkit.org/show_bug.cgi?id=112723 + +Reviewed by Tony Chang. + +Root cause is a race between the "versionchange" transaction's "complete" event +being dispatched to script and the "success" call arriving from the back-end +which updates the metadata. Tracked as https://bugs.webkit.org/show_bug.cgi?id=111642 + +* storage/indexeddb/resources/index-duplicate-keypaths.js: +(testCollideAutoIncrementSetup): Trigger test from open's onsuccess... +(testCollideAutoIncrement): ... rather than transaction's oncomplete. + 2013-03-19 Philip Rogers Separate SVG image size and container size Modified: trunk/LayoutTests/storage/indexeddb/resources/index-duplicate-keypaths.js (146231 => 146232) --- trunk/LayoutTests/storage/indexeddb/resources/index-duplicate-keypaths.js 2013-03-19 18:59:49 UTC (rev 146231) +++ trunk/LayoutTests/storage/indexeddb/resources/index-duplicate-keypaths.js 2013-03-19 19:03:07 UTC (rev 146232) @@ -42,6 +42,7 @@ request._onupgradeneeded_ = testCollideAutoIncrement; request._onerror_ = unexpectedErrorCallback; request._onblocked_ = unexpectedBlockedCallback; +request._onsuccess_ = storeCollidedAutoIncrementData; } function testCollideAutoIncrement() @@ -52,7 +53,6 @@ evalAndLog("store = db.createObjectStore('collideWithAutoIncrement', {keyPath: 'foo', autoIncrement: true})"); evalAndLog("index = store.createIndex('foo', 'foo')"); -trans._oncomplete_ = storeCollidedAutoIncrementData; trans._onerror_ = unexpectedErrorCallback; trans._onabort_ = unexpectedAbortCallback; } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [146225] trunk/Source/WebCore
Title: [146225] trunk/Source/WebCore Revision 146225 Author jsb...@chromium.org Date 2013-03-19 11:23:51 -0700 (Tue, 19 Mar 2013) Log Message IndexedDB: Use integer plumbing for deleteDatabase onVersionChange calls https://bugs.webkit.org/show_bug.cgi?id=112715 Reviewed by Tony Chang. When deleteDatabase on the back-end needs to send the front-end an onVersionChange notification it does so using the string overload. That's the only remaining use of that overload and we'd like to delete it. Switch to using the integer overload, with an already defined special value. This will unblock http://wkbug.com/112712 to delete the dead code. No new tests - no functional change. * Modules/indexeddb/IDBDatabase.cpp: (WebCore::IDBDatabase::onVersionChange): Map NoIntVersion to null. * Modules/indexeddb/IDBDatabaseBackendImpl.cpp: (WebCore::IDBDatabaseBackendImpl::deleteDatabase): Call integer overload. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/IDBDatabase.cpp trunk/Source/WebCore/Modules/indexeddb/IDBDatabaseBackendImpl.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (146224 => 146225) --- trunk/Source/WebCore/ChangeLog 2013-03-19 18:20:35 UTC (rev 146224) +++ trunk/Source/WebCore/ChangeLog 2013-03-19 18:23:51 UTC (rev 146225) @@ -1,3 +1,23 @@ +2013-03-19 Joshua Bell + +IndexedDB: Use integer plumbing for deleteDatabase onVersionChange calls +https://bugs.webkit.org/show_bug.cgi?id=112715 + +Reviewed by Tony Chang. + +When deleteDatabase on the back-end needs to send the front-end an +onVersionChange notification it does so using the string overload. That's +the only remaining use of that overload and we'd like to delete it. Switch +to using the integer overload, with an already defined special value. +This will unblock http://wkbug.com/112712 to delete the dead code. + +No new tests - no functional change. + +* Modules/indexeddb/IDBDatabase.cpp: +(WebCore::IDBDatabase::onVersionChange): Map NoIntVersion to null. +* Modules/indexeddb/IDBDatabaseBackendImpl.cpp: +(WebCore::IDBDatabaseBackendImpl::deleteDatabase): Call integer overload. + 2013-03-19 Terry Anderson Hover effects from a GestureTapDown are dismissed by a GestureTap on the hover element Modified: trunk/Source/WebCore/Modules/indexeddb/IDBDatabase.cpp (146224 => 146225) --- trunk/Source/WebCore/Modules/indexeddb/IDBDatabase.cpp 2013-03-19 18:20:35 UTC (rev 146224) +++ trunk/Source/WebCore/Modules/indexeddb/IDBDatabase.cpp 2013-03-19 18:23:51 UTC (rev 146225) @@ -307,7 +307,8 @@ if (m_closePending) return; -enqueueEvent(IDBVersionChangeEvent::create(IDBAny::create(oldVersion), IDBAny::create(newVersion), eventNames().versionchangeEvent)); +RefPtr newVersionAny = newVersion == IDBDatabaseMetadata::NoIntVersion ? IDBAny::createNull() : IDBAny::create(newVersion); +enqueueEvent(IDBVersionChangeEvent::create(IDBAny::create(oldVersion), newVersionAny.release(), eventNames().versionchangeEvent)); } void IDBDatabase::onVersionChange(const String& newVersion) Modified: trunk/Source/WebCore/Modules/indexeddb/IDBDatabaseBackendImpl.cpp (146224 => 146225) --- trunk/Source/WebCore/Modules/indexeddb/IDBDatabaseBackendImpl.cpp 2013-03-19 18:20:35 UTC (rev 146224) +++ trunk/Source/WebCore/Modules/indexeddb/IDBDatabaseBackendImpl.cpp 2013-03-19 18:23:51 UTC (rev 146225) @@ -1281,7 +1281,7 @@ if (isDeleteDatabaseBlocked()) { for (DatabaseCallbacksSet::const_iterator it = m_databaseCallbacksSet.begin(); it != m_databaseCallbacksSet.end(); ++it) { // Front end ensures the event is not fired at connections that have closePending set. -(*it)->onVersionChange(NoStringVersion); +(*it)->onVersionChange(m_metadata.intVersion, IDBDatabaseMetadata::NoIntVersion); } // FIXME: Only fire onBlocked if there are open connections after the // VersionChangeEvents are received, not just set up to fire. ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [146152] trunk/Source/WebCore
Title: [146152] trunk/Source/WebCore Revision 146152 Author jsb...@chromium.org Date 2013-03-18 16:54:06 -0700 (Mon, 18 Mar 2013) Log Message IDB Cursor continue moves one item at a time https://bugs.webkit.org/show_bug.cgi?id=109972 Reviewed by Tony Chang. IndexedDB: Use seek on the underlying levelDB iterator to implement the continue operation on a cursor, instead of advancing one item at a time. On a simple test in Chrome - open a key cursor on an index w/ 100 items, then do continue(50), rinse and repeat - this cuts the time 50% (850c/s to 1700c/s). (Original patch c/o Pankaj Kakkar ) Covered by existing storage/indexeddb cursor tests; just a performance optimization. * Modules/indexeddb/IDBBackingStore.cpp: (WebCore::IDBBackingStore::Cursor::continueFunction): Special case first iteration w/ key to use leveldb seek (forward cursors only, since reverse seek isn't exposed). (WebCore::ObjectStoreKeyCursorImpl::encodeKey): Helper for encoding key to seek to. (WebCore::ObjectStoreCursorImpl::encodeKey): Ditto. (WebCore::IndexKeyCursorImpl::encodeKey): Ditto. (WebCore::IndexCursorImpl::encodeKey): Ditto. (WebCore::objectStoreCursorOptions): Store IDs for encodeKey() to use. (WebCore::indexCursorOptions): Ditto. * Modules/indexeddb/IDBBackingStore.h: (CursorOptions): Storage for IDs. (Cursor): Add encodeKey() to interface. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/IDBBackingStore.cpp trunk/Source/WebCore/Modules/indexeddb/IDBBackingStore.h Diff Modified: trunk/Source/WebCore/ChangeLog (146151 => 146152) --- trunk/Source/WebCore/ChangeLog 2013-03-18 23:52:25 UTC (rev 146151) +++ trunk/Source/WebCore/ChangeLog 2013-03-18 23:54:06 UTC (rev 146152) @@ -1,3 +1,30 @@ +2013-03-18 Joshua Bell + +IDB Cursor continue moves one item at a time +https://bugs.webkit.org/show_bug.cgi?id=109972 + +Reviewed by Tony Chang. + +IndexedDB: Use seek on the underlying levelDB iterator to implement the continue operation +on a cursor, instead of advancing one item at a time. On a simple test in Chrome - open a +key cursor on an index w/ 100 items, then do continue(50), rinse and repeat - this cuts the +time 50% (850c/s to 1700c/s). (Original patch c/o Pankaj Kakkar ) + +Covered by existing storage/indexeddb cursor tests; just a performance optimization. + +* Modules/indexeddb/IDBBackingStore.cpp: +(WebCore::IDBBackingStore::Cursor::continueFunction): Special case first iteration w/ key +to use leveldb seek (forward cursors only, since reverse seek isn't exposed). +(WebCore::ObjectStoreKeyCursorImpl::encodeKey): Helper for encoding key to seek to. +(WebCore::ObjectStoreCursorImpl::encodeKey): Ditto. +(WebCore::IndexKeyCursorImpl::encodeKey): Ditto. +(WebCore::IndexCursorImpl::encodeKey): Ditto. +(WebCore::objectStoreCursorOptions): Store IDs for encodeKey() to use. +(WebCore::indexCursorOptions): Ditto. +* Modules/indexeddb/IDBBackingStore.h: +(CursorOptions): Storage for IDs. +(Cursor): Add encodeKey() to interface. + 2013-03-18 Alexey Proskuryakov MessagePortChannel::EventData should not be exposed Modified: trunk/Source/WebCore/Modules/indexeddb/IDBBackingStore.cpp (146151 => 146152) --- trunk/Source/WebCore/Modules/indexeddb/IDBBackingStore.cpp 2013-03-18 23:52:25 UTC (rev 146151) +++ trunk/Source/WebCore/Modules/indexeddb/IDBBackingStore.cpp 2013-03-18 23:54:06 UTC (rev 146152) @@ -1345,6 +1345,8 @@ { RefPtr previousKey = m_currentKey; +bool firstIteration = true; + // When iterating with PrevNoDuplicate, spec requires that the // value we yield for each key is the first duplicate in forwards // order. @@ -1354,7 +1356,11 @@ for (;;) { if (nextState == Seek) { -if (forward) +// FIXME: Optimize seeking for reverse cursors as well. +if (firstIteration && key && forward) { +m_iterator->seek(encodeKey(*key)); +firstIteration = false; +} else if (forward) m_iterator->next(); else m_iterator->prev(); @@ -1476,6 +1482,12 @@ virtual PassRefPtr value() const { ASSERT_NOT_REACHED(); return 0; } virtual bool loadCurrentRow(); +protected: +virtual Vector encodeKey(const IDBKey &key) +{ +return ObjectStoreDataKey::encode(m_cursorOptions.databaseId, m_cursorOptions.objectStoreId, key); +} + private: ObjectStoreKeyCursorImpl(LevelDBTransaction* transaction, const IDBBackingStore::Cursor::CursorOptions& cursorOptions) : IDBBackingStore::Cursor(transaction, cursorOptions) @@ -1531,6 +1543,12 @@ virtual PassRefPtr value() const { return m_currentValue; } virtual bool loadCurrentRow(); +protected: +virtual Vector encodeKey(const IDBKey &key) +{ +return ObjectStoreD
[webkit-changes] [145917] trunk/Source
Title: [145917] trunk/Source Revision 145917 Author jsb...@chromium.org Date 2013-03-15 11:00:03 -0700 (Fri, 15 Mar 2013) Log Message IndexedDB: Handle success events arriving after context stopped https://bugs.webkit.org/show_bug.cgi?id=112451 Reviewed by Tony Chang. Source/WebCore: In multiprocess ports, events from the back-end can arrive in the form of onXXX() calls after the script execution context has stopped. These need to be ignored. This was already done in most cases, but missing for two overloads of IDBRequest::onSuccess() - void and int64_t. Test: webkit_unit_test IDBRequestTest.EventsAfterStopping * Modules/indexeddb/IDBRequest.cpp: (WebCore::IDBRequest::onSuccess): Early return if context has stopped. (WebCore::IDBRequest::onSuccessInternal): ASSERT() that callers have checked context. Source/WebKit/chromium: * tests/IDBRequestTest.cpp: (WebKit::TEST_F): Add cases for onSuccess() and onSuccess(int64_t) Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/IDBRequest.cpp trunk/Source/WebKit/chromium/ChangeLog trunk/Source/WebKit/chromium/tests/IDBRequestTest.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (145916 => 145917) --- trunk/Source/WebCore/ChangeLog 2013-03-15 17:59:44 UTC (rev 145916) +++ trunk/Source/WebCore/ChangeLog 2013-03-15 18:00:03 UTC (rev 145917) @@ -1,3 +1,21 @@ +2013-03-15 Joshua Bell + +IndexedDB: Handle success events arriving after context stopped +https://bugs.webkit.org/show_bug.cgi?id=112451 + +Reviewed by Tony Chang. + +In multiprocess ports, events from the back-end can arrive in the form of +onXXX() calls after the script execution context has stopped. These need to +be ignored. This was already done in most cases, but missing for two overloads +of IDBRequest::onSuccess() - void and int64_t. + +Test: webkit_unit_test IDBRequestTest.EventsAfterStopping + +* Modules/indexeddb/IDBRequest.cpp: +(WebCore::IDBRequest::onSuccess): Early return if context has stopped. +(WebCore::IDBRequest::onSuccessInternal): ASSERT() that callers have checked context. + 2013-03-14 Jer Noble REGRESSION: -webkit-box-reflect does not show on video elements Modified: trunk/Source/WebCore/Modules/indexeddb/IDBRequest.cpp (145916 => 145917) --- trunk/Source/WebCore/Modules/indexeddb/IDBRequest.cpp 2013-03-15 17:59:44 UTC (rev 145916) +++ trunk/Source/WebCore/Modules/indexeddb/IDBRequest.cpp 2013-03-15 18:00:03 UTC (rev 145917) @@ -371,16 +371,23 @@ void IDBRequest::onSuccess(int64_t value) { +IDB_TRACE("IDBRequest::onSuccess(int64_t)"); +if (!shouldEnqueueEvent()) +return; return onSuccessInternal(SerializedScriptValue::numberValue(value)); } void IDBRequest::onSuccess() { +IDB_TRACE("IDBRequest::onSuccess()"); +if (!shouldEnqueueEvent()) +return; return onSuccessInternal(SerializedScriptValue::undefinedValue()); } void IDBRequest::onSuccessInternal(PassRefPtr value) { +ASSERT(!m_contextStopped); DOMRequestState::Scope scope(m_requestState); return onSuccessInternal(deserializeIDBValue(requestState(), value)); } Modified: trunk/Source/WebKit/chromium/ChangeLog (145916 => 145917) --- trunk/Source/WebKit/chromium/ChangeLog 2013-03-15 17:59:44 UTC (rev 145916) +++ trunk/Source/WebKit/chromium/ChangeLog 2013-03-15 18:00:03 UTC (rev 145917) @@ -1,3 +1,13 @@ +2013-03-15 Joshua Bell + +IndexedDB: Handle success events arriving after context stopped +https://bugs.webkit.org/show_bug.cgi?id=112451 + +Reviewed by Tony Chang. + +* tests/IDBRequestTest.cpp: +(WebKit::TEST_F): Add cases for onSuccess() and onSuccess(int64_t) + 2013-03-15 Nate Chapin Hide MainResourceLoader from the outside world Modified: trunk/Source/WebKit/chromium/tests/IDBRequestTest.cpp (145916 => 145917) --- trunk/Source/WebKit/chromium/tests/IDBRequestTest.cpp 2013-03-15 17:59:44 UTC (rev 145916) +++ trunk/Source/WebKit/chromium/tests/IDBRequestTest.cpp 2013-03-15 18:00:03 UTC (rev 145917) @@ -96,6 +96,8 @@ request->onSuccess(IDBKey::createInvalid()); request->onSuccess(PassRefPtr(0)); request->onSuccess(PassRefPtr(0), IDBKey::createInvalid(), IDBKeyPath()); +request->onSuccess(0LL); +request->onSuccess(); request->onSuccess(IDBKey::createInvalid(), IDBKey::createInvalid(), 0); } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [145238] trunk/Source
Title: [145238] trunk/Source Revision 145238 Author jsb...@chromium.org Date 2013-03-08 10:06:23 -0800 (Fri, 08 Mar 2013) Log Message IndexedDB: Use WeakPtr for Factory-to-BackingStore reference https://bugs.webkit.org/show_bug.cgi?id=111459 Reviewed by Adam Barth. Source/WebCore: IDBFactoryBackendImpl maintains a map of backing stores - if another database in the same origin is opened, the backing store instance must be re-used). This was a map to raw pointers so that the backing store can be collected when all database references are dropped. The map was maintained manually by passing the factory to the IDBBackingStore which would add/remove itself on creation/destruction. Replace this with a HashMap>. This simplifies the plumbing; map entries "leak" but are purged on subsequent opens. Added webkit_unit_test (Chromium port) to verify refcounts. * Modules/indexeddb/IDBBackingStore.cpp: (WebCore::IDBBackingStore::IDBBackingStore): No need to notify factory of lifetime. (WebCore::IDBBackingStore::~IDBBackingStore): Ditto. (WebCore::IDBBackingStore::open): Ditto. * Modules/indexeddb/IDBBackingStore.h: No reference to the factory, but... (WebCore::IDBBackingStore::createWeakPtr): Do need to expose weak pointers for the factory to hold. * Modules/indexeddb/IDBFactoryBackendImpl.cpp: (WebCore::cleanWeakMap): Helper function to scrub a HashMap> of empty pointers. May move to WTF when we've learned how general it is, or come up with a dedicated WeakPtrHashMap type. (WebCore::IDBFactoryBackendImpl::openBackingStore): WeakPtr fu. * Modules/indexeddb/IDBFactoryBackendImpl.h: (IDBFactoryBackendImpl): Remove plumbing methods. Source/WebKit/chromium: Add new test that verifies refcounts. * WebKit.gyp: Don't include files depending on webkit_support. * tests/IDBBackingStoreTest.cpp: (WebCore::IDBBackingStoreTest::SetUp): No need for dummy factory. (MockIDBFactoryBackend): Allow access to protected openBackingStore method. (WebCore::TEST): Add new test that verifies refcounts. * tests/IDBCleanupOnIOErrorTest.cpp: (WebCore::TEST): No need for dummy factory. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/IDBBackingStore.cpp trunk/Source/WebCore/Modules/indexeddb/IDBBackingStore.h trunk/Source/WebCore/Modules/indexeddb/IDBFactoryBackendImpl.cpp trunk/Source/WebCore/Modules/indexeddb/IDBFactoryBackendImpl.h trunk/Source/WebKit/chromium/ChangeLog trunk/Source/WebKit/chromium/WebKit.gyp trunk/Source/WebKit/chromium/tests/IDBBackingStoreTest.cpp trunk/Source/WebKit/chromium/tests/IDBCleanupOnIOErrorTest.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (145237 => 145238) --- trunk/Source/WebCore/ChangeLog 2013-03-08 17:42:13 UTC (rev 145237) +++ trunk/Source/WebCore/ChangeLog 2013-03-08 18:06:23 UTC (rev 145238) @@ -1,3 +1,34 @@ +2013-03-08 Joshua Bell + +IndexedDB: Use WeakPtr for Factory-to-BackingStore reference +https://bugs.webkit.org/show_bug.cgi?id=111459 + +Reviewed by Adam Barth. + +IDBFactoryBackendImpl maintains a map of backing stores - if another database in the same +origin is opened, the backing store instance must be re-used). This was a map to raw +pointers so that the backing store can be collected when all database references are +dropped. The map was maintained manually by passing the factory to the IDBBackingStore which +would add/remove itself on creation/destruction. + +Replace this with a HashMap>. This simplifies the plumbing; map entries +"leak" but are purged on subsequent opens. + +Added webkit_unit_test (Chromium port) to verify refcounts. + +* Modules/indexeddb/IDBBackingStore.cpp: +(WebCore::IDBBackingStore::IDBBackingStore): No need to notify factory of lifetime. +(WebCore::IDBBackingStore::~IDBBackingStore): Ditto. +(WebCore::IDBBackingStore::open): Ditto. +* Modules/indexeddb/IDBBackingStore.h: No reference to the factory, but... +(WebCore::IDBBackingStore::createWeakPtr): Do need to expose weak pointers for the factory to hold. +* Modules/indexeddb/IDBFactoryBackendImpl.cpp: +(WebCore::cleanWeakMap): Helper function to scrub a HashMap> of empty pointers. +May move to WTF when we've learned how general it is, or come up with a dedicated WeakPtrHashMap type. +(WebCore::IDBFactoryBackendImpl::openBackingStore): WeakPtr fu. +* Modules/indexeddb/IDBFactoryBackendImpl.h: +(IDBFactoryBackendImpl): Remove plumbing methods. + 2013-03-08 John Mellor @media queries do not take zooming into account Modified: trunk/Source/WebCore/Modules/indexeddb/IDBBackingStore.cpp (145237 => 145238) --- trunk/Source/WebCore/Modules/indexeddb/IDBBackingStore.cpp 2013-03-08 17:42:13 UTC (rev 145237) +++ trunk/Source/WebCore/Modules/indexeddb/IDBBackingStore.cpp 2013-03-08 18:06:23 UTC (rev 145238) @@ -30,7 +30,6 @@ #include "FileSystem.h" #include "Hist
[webkit-changes] [145166] trunk/Source
Title: [145166] trunk/Source Revision 145166 Author jsb...@chromium.org Date 2013-03-07 17:42:17 -0800 (Thu, 07 Mar 2013) Log Message IndexedDB: Use WeakPtr for Factory-to-BackingStore reference https://bugs.webkit.org/show_bug.cgi?id=111459 Reviewed by Adam Barth. Source/WebCore: IDBFactoryBackendImpl maintains a map of backing stores - if another database in the same origin is opened, the backing store instance must be re-used). This was a map to raw pointers so that the backing store can be collected when all database references are dropped. The map was maintained manually by passing the factory to the IDBBackingStore which would add/remove itself on creation/destruction. Replace this with a HashMap>. This simplifies the plumbing; map entries "leak" but are purged on subsequent opens. Added webkit_unit_test (Chromium port) to verify refcounts. * Modules/indexeddb/IDBBackingStore.cpp: (WebCore::IDBBackingStore::IDBBackingStore): No need to notify factory of lifetime. (WebCore::IDBBackingStore::~IDBBackingStore): Ditto. (WebCore::IDBBackingStore::open): Ditto. * Modules/indexeddb/IDBBackingStore.h: No reference to the factory, but... (WebCore::IDBBackingStore::createWeakPtr): Do need to expose weak pointers for the factory to hold. * Modules/indexeddb/IDBFactoryBackendImpl.cpp: (WebCore::cleanWeakMap): Helper function to scrub a HashMap> of empty pointers. May move to WTF when we've learned how general it is, or come up with a dedicated WeakPtrHashMap type. (WebCore::IDBFactoryBackendImpl::openBackingStore): WeakPtr fu. * Modules/indexeddb/IDBFactoryBackendImpl.h: (IDBFactoryBackendImpl): Remove plumbing methods. Source/WebKit/chromium: Added tests to verify refcounts on backing stores, update method signatures. * tests/IDBBackingStoreTest.cpp: (WebCore::IDBBackingStoreTest::SetUp): No dummy factory needed. (MockIDBFactoryBackend): Expose protected method to tests. (WebCore::TEST): Added BackingStoreLifetime test. * tests/IDBCleanupOnIOErrorTest.cpp: No dummy factory needed. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/IDBBackingStore.cpp trunk/Source/WebCore/Modules/indexeddb/IDBBackingStore.h trunk/Source/WebCore/Modules/indexeddb/IDBFactoryBackendImpl.cpp trunk/Source/WebCore/Modules/indexeddb/IDBFactoryBackendImpl.h trunk/Source/WebKit/chromium/ChangeLog trunk/Source/WebKit/chromium/tests/IDBBackingStoreTest.cpp trunk/Source/WebKit/chromium/tests/IDBCleanupOnIOErrorTest.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (145165 => 145166) --- trunk/Source/WebCore/ChangeLog 2013-03-08 01:36:42 UTC (rev 145165) +++ trunk/Source/WebCore/ChangeLog 2013-03-08 01:42:17 UTC (rev 145166) @@ -1,3 +1,34 @@ +2013-03-07 Joshua Bell + +IndexedDB: Use WeakPtr for Factory-to-BackingStore reference +https://bugs.webkit.org/show_bug.cgi?id=111459 + +Reviewed by Adam Barth. + +IDBFactoryBackendImpl maintains a map of backing stores - if another database in the same +origin is opened, the backing store instance must be re-used). This was a map to raw +pointers so that the backing store can be collected when all database references are +dropped. The map was maintained manually by passing the factory to the IDBBackingStore which +would add/remove itself on creation/destruction. + +Replace this with a HashMap>. This simplifies the plumbing; map entries +"leak" but are purged on subsequent opens. + +Added webkit_unit_test (Chromium port) to verify refcounts. + +* Modules/indexeddb/IDBBackingStore.cpp: +(WebCore::IDBBackingStore::IDBBackingStore): No need to notify factory of lifetime. +(WebCore::IDBBackingStore::~IDBBackingStore): Ditto. +(WebCore::IDBBackingStore::open): Ditto. +* Modules/indexeddb/IDBBackingStore.h: No reference to the factory, but... +(WebCore::IDBBackingStore::createWeakPtr): Do need to expose weak pointers for the factory to hold. +* Modules/indexeddb/IDBFactoryBackendImpl.cpp: +(WebCore::cleanWeakMap): Helper function to scrub a HashMap> of empty pointers. +May move to WTF when we've learned how general it is, or come up with a dedicated WeakPtrHashMap type. +(WebCore::IDBFactoryBackendImpl::openBackingStore): WeakPtr fu. +* Modules/indexeddb/IDBFactoryBackendImpl.h: +(IDBFactoryBackendImpl): Remove plumbing methods. + 2013-03-07 Otto Derek Cheung [BlackBerry] RefCounting ParsedCookie to avoid SegFaults Modified: trunk/Source/WebCore/Modules/indexeddb/IDBBackingStore.cpp (145165 => 145166) --- trunk/Source/WebCore/Modules/indexeddb/IDBBackingStore.cpp 2013-03-08 01:36:42 UTC (rev 145165) +++ trunk/Source/WebCore/Modules/indexeddb/IDBBackingStore.cpp 2013-03-08 01:42:17 UTC (rev 145166) @@ -30,7 +30,6 @@ #include "FileSystem.h" #include "HistogramSupport.h" -#include "IDBFactoryBackendImpl.h" #include "IDBKey.h" #include "IDBKeyPa
[webkit-changes] [145111] trunk/LayoutTests
Title: [145111] trunk/LayoutTests Revision 145111 Author jsb...@chromium.org Date 2013-03-07 11:40:36 -0800 (Thu, 07 Mar 2013) Log Message IndexedDB: Make test behavior deterministic in multiprocess ports https://bugs.webkit.org/show_bug.cgi?id=111643 Reviewed by Tony Chang. Root cause is documented in wkbug.com/111642 but as a stop-gap - ensure that this test doesn't fail flakily in multiprocess ports by moving the last part of the test out of a limbo zone. * storage/indexeddb/resources/index-multientry.js: Run subsequent part of test in open's "success" handler rather than transaction's "complete" handler. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/storage/indexeddb/resources/index-multientry.js Diff Modified: trunk/LayoutTests/ChangeLog (145110 => 145111) --- trunk/LayoutTests/ChangeLog 2013-03-07 19:20:27 UTC (rev 145110) +++ trunk/LayoutTests/ChangeLog 2013-03-07 19:40:36 UTC (rev 145111) @@ -1,3 +1,17 @@ +2013-03-07 Joshua Bell + +IndexedDB: Make test behavior deterministic in multiprocess ports +https://bugs.webkit.org/show_bug.cgi?id=111643 + +Reviewed by Tony Chang. + +Root cause is documented in wkbug.com/111642 but as a stop-gap - ensure +that this test doesn't fail flakily in multiprocess ports by moving the +last part of the test out of a limbo zone. + +* storage/indexeddb/resources/index-multientry.js: Run subsequent part of +test in open's "success" handler rather than transaction's "complete" handler. + 2013-03-06 Ojan Vafai Recalculate borders at the beginning of table layout Modified: trunk/LayoutTests/storage/indexeddb/resources/index-multientry.js (145110 => 145111) --- trunk/LayoutTests/storage/indexeddb/resources/index-multientry.js 2013-03-07 19:20:27 UTC (rev 145110) +++ trunk/LayoutTests/storage/indexeddb/resources/index-multientry.js 2013-03-07 19:40:36 UTC (rev 145111) @@ -136,9 +136,9 @@ evalAndLog("db = event.target.result"); evalAndLog("trans = event.target.transaction"); trans._onabort_ = unexpectedAbortCallback; -trans._oncomplete_ = function() { verifyIndexes('index-new', finishJSTest); }; store = evalAndLog("store = trans.objectStore('store')"); evalAndLog("store.createIndex('index-new', 'x', {multiEntry: true})"); }; +request._onsuccess_ = function() { verifyIndexes('index-new', finishJSTest); }; } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [144813] trunk/Source/WebCore
Title: [144813] trunk/Source/WebCore Revision 144813 Author jsb...@chromium.org Date 2013-03-05 13:48:34 -0800 (Tue, 05 Mar 2013) Log Message IndexedDB: Remove some unused binding code https://bugs.webkit.org/show_bug.cgi?id=111463 Reviewed by Adam Barth. IDBRequest got a custom V8 getter for |request| to help diagnose an issue, but the root cause was found/fixed (http://wkbug.com/110916 and http://wkbug.com/110206) so remove it. Also, IDBKey was marked ScriptWrappable but it is now explicitly converted to a ScriptValue before it gets anywhere near the binding code, so remove that too. Finally, createIDBKeyFromValue doesn't need to be exposed from IDBBindingUtilities. No new tests - just removing dead code. * Modules/indexeddb/IDBKey.h: No need for ScriptWrappable. * Modules/indexeddb/IDBRequest.idl: Remove custom binding (root cause of bug found). * WebCore.gypi: Ditto. * bindings/js/IDBBindingUtilities.h: Don't expose internal createIDBKeyFromValue(). * bindings/v8/IDBBindingUtilities.h: Ditto. * bindings/v8/custom/V8IDBRequestCustom.cpp: Removed. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/IDBKey.h trunk/Source/WebCore/Modules/indexeddb/IDBRequest.idl trunk/Source/WebCore/WebCore.gypi trunk/Source/WebCore/bindings/js/IDBBindingUtilities.h trunk/Source/WebCore/bindings/v8/IDBBindingUtilities.h Removed Paths trunk/Source/WebCore/bindings/v8/custom/V8IDBRequestCustom.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (144812 => 144813) --- trunk/Source/WebCore/ChangeLog 2013-03-05 21:47:30 UTC (rev 144812) +++ trunk/Source/WebCore/ChangeLog 2013-03-05 21:48:34 UTC (rev 144813) @@ -1,3 +1,25 @@ +2013-03-05 Joshua Bell + +IndexedDB: Remove some unused binding code +https://bugs.webkit.org/show_bug.cgi?id=111463 + +Reviewed by Adam Barth. + +IDBRequest got a custom V8 getter for |request| to help diagnose an issue, but the +root cause was found/fixed (http://wkbug.com/110916 and http://wkbug.com/110206) so +remove it. Also, IDBKey was marked ScriptWrappable but it is now explicitly converted +to a ScriptValue before it gets anywhere near the binding code, so remove that too. +Finally, createIDBKeyFromValue doesn't need to be exposed from IDBBindingUtilities. + +No new tests - just removing dead code. + +* Modules/indexeddb/IDBKey.h: No need for ScriptWrappable. +* Modules/indexeddb/IDBRequest.idl: Remove custom binding (root cause of bug found). +* WebCore.gypi: Ditto. +* bindings/js/IDBBindingUtilities.h: Don't expose internal createIDBKeyFromValue(). +* bindings/v8/IDBBindingUtilities.h: Ditto. +* bindings/v8/custom/V8IDBRequestCustom.cpp: Removed. + 2013-03-05 Sheriff Bot Unreviewed, rolling out r144798. Modified: trunk/Source/WebCore/Modules/indexeddb/IDBKey.h (144812 => 144813) --- trunk/Source/WebCore/Modules/indexeddb/IDBKey.h 2013-03-05 21:47:30 UTC (rev 144812) +++ trunk/Source/WebCore/Modules/indexeddb/IDBKey.h 2013-03-05 21:48:34 UTC (rev 144813) @@ -28,7 +28,6 @@ #if ENABLE(INDEXED_DATABASE) -#include "ScriptWrappable.h" #include #include #include @@ -36,7 +35,7 @@ namespace WebCore { -class IDBKey : public ScriptWrappable, public RefCounted { +class IDBKey : public RefCounted { public: typedef Vector > KeyArray; Modified: trunk/Source/WebCore/Modules/indexeddb/IDBRequest.idl (144812 => 144813) --- trunk/Source/WebCore/Modules/indexeddb/IDBRequest.idl 2013-03-05 21:47:30 UTC (rev 144812) +++ trunk/Source/WebCore/Modules/indexeddb/IDBRequest.idl 2013-03-05 21:48:34 UTC (rev 144813) @@ -33,7 +33,7 @@ EventTarget, JSNoStaticTables ] interface IDBRequest { -[V8Custom] readonly attribute IDBAny result +readonly attribute IDBAny result getter raises (DOMException); readonly attribute DOMError error getter raises (DOMException); Modified: trunk/Source/WebCore/WebCore.gypi (144812 => 144813) --- trunk/Source/WebCore/WebCore.gypi 2013-03-05 21:47:30 UTC (rev 144812) +++ trunk/Source/WebCore/WebCore.gypi 2013-03-05 21:48:34 UTC (rev 144813) @@ -1478,7 +1478,6 @@ 'bindings/v8/custom/V8HTMLSelectElementCustom.h', 'bindings/v8/custom/V8HistoryCustom.cpp', 'bindings/v8/custom/V8IDBAnyCustom.cpp', -'bindings/v8/custom/V8IDBRequestCustom.cpp', 'bindings/v8/custom/V8ImageDataCustom.cpp', 'bindings/v8/custom/V8InjectedScriptHostCustom.cpp', 'bindings/v8/custom/V8InjectedScriptManager.cpp', Modified: trunk/Source/WebCore/bindings/js/IDBBindingUtilities.h (144812 => 144813) --- trunk/Source/WebCore/bindings/js/IDBBindingUtilities.h 2013-03-05 21:47:30 UTC (rev 144812) +++ trunk/Source/WebCore/bindings/js/IDBBindingUtilities.h 2013-03-05 21:48:34 UTC (rev 144813) @@ -39,8 +39,6 @@ class IDBKeyPath; class SharedBuffer; -PassRefPtr createIDBKeyFromValu
[webkit-changes] [144724] trunk/LayoutTests
Title: [144724] trunk/LayoutTests Revision 144724 Author jsb...@chromium.org Date 2013-03-04 22:31:42 -0800 (Mon, 04 Mar 2013) Log Message [V8] Add LayoutTests for SerializedScriptValue Int32/Uint32 cases https://bugs.webkit.org/show_bug.cgi?id=111364 Reviewed by Kentaro Hara. A lack of layout tests for SerializedScriptValue special cases let crbug.com/179280 slip in and out un-noticed. Rectify the situation. * platform/chromium/fast/storage/serialized-script-value-expected.txt: * platform/chromium/fast/storage/serialized-script-value.html: * storage/indexeddb/structured-clone-expected.txt: * storage/indexeddb/structured-clone.html: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/chromium/fast/storage/serialized-script-value-expected.txt trunk/LayoutTests/platform/chromium/fast/storage/serialized-script-value.html trunk/LayoutTests/storage/indexeddb/structured-clone-expected.txt trunk/LayoutTests/storage/indexeddb/structured-clone.html Diff Modified: trunk/LayoutTests/ChangeLog (144723 => 144724) --- trunk/LayoutTests/ChangeLog 2013-03-05 06:14:18 UTC (rev 144723) +++ trunk/LayoutTests/ChangeLog 2013-03-05 06:31:42 UTC (rev 144724) @@ -1,3 +1,18 @@ +2013-03-04 Joshua Bell + +[V8] Add LayoutTests for SerializedScriptValue Int32/Uint32 cases +https://bugs.webkit.org/show_bug.cgi?id=111364 + +Reviewed by Kentaro Hara. + +A lack of layout tests for SerializedScriptValue special cases let +crbug.com/179280 slip in and out un-noticed. Rectify the situation. + +* platform/chromium/fast/storage/serialized-script-value-expected.txt: +* platform/chromium/fast/storage/serialized-script-value.html: +* storage/indexeddb/structured-clone-expected.txt: +* storage/indexeddb/structured-clone.html: + 2013-03-04 Brandon Jones WEBGL_compressed_texture_atc implementation Modified: trunk/LayoutTests/platform/chromium/fast/storage/serialized-script-value-expected.txt (144723 => 144724) --- trunk/LayoutTests/platform/chromium/fast/storage/serialized-script-value-expected.txt 2013-03-05 06:14:18 UTC (rev 144723) +++ trunk/LayoutTests/platform/chromium/fast/storage/serialized-script-value-expected.txt 2013-03-05 06:31:42 UTC (rev 144724) @@ -89,6 +89,30 @@ Serialize 1.23: PASS bufferView.length is expectedBufferValues.length +Deserialize to 2147483647: +PASS JSON.stringify(newObj) is JSON.stringify(obj) +PASS areValuesIdentical(newObj, obj) is true +Serialize 2147483647: +PASS bufferView.length is expectedBufferValues.length + +Deserialize to -2147483648: +PASS JSON.stringify(newObj) is JSON.stringify(obj) +PASS areValuesIdentical(newObj, obj) is true +Serialize -2147483648: +PASS bufferView.length is expectedBufferValues.length + +Deserialize to 2147483648: +PASS JSON.stringify(newObj) is JSON.stringify(obj) +PASS areValuesIdentical(newObj, obj) is true +Serialize 2147483648: +PASS bufferView.length is expectedBufferValues.length + +Deserialize to 4294967295: +PASS JSON.stringify(newObj) is JSON.stringify(obj) +PASS areValuesIdentical(newObj, obj) is true +Serialize 4294967295: +PASS bufferView.length is expectedBufferValues.length + Deserialize to "": PASS JSON.stringify(newObj) is JSON.stringify(obj) PASS areValuesIdentical(newObj, obj) is true Modified: trunk/LayoutTests/platform/chromium/fast/storage/serialized-script-value.html (144723 => 144724) --- trunk/LayoutTests/platform/chromium/fast/storage/serialized-script-value.html 2013-03-05 06:14:18 UTC (rev 144723) +++ trunk/LayoutTests/platform/chromium/fast/storage/serialized-script-value.html 2013-03-05 06:31:42 UTC (rev 144724) @@ -55,6 +55,13 @@ testSerialization(Math.pow(2,55), [0x02ff, 0x003f, 0x004e, 0x, 0x, 0x6000, 0x0043]); testSerialization(1.23, [0x02ff, 0x003f, 0xae4e, 0xe147, 0x147a, 0xf3ae, 0x003f]); + +// Exercise special cases for Int32/Uint32. +testSerialization( 0x7fff, [0x02ff, 0x003f, 0xfe49, 0x, 0x0fff]); +testSerialization(-0x8000, [0x02ff, 0x003f, 0xff49, 0x, 0x0fff]); +testSerialization( 0x8000, [0x02ff, 0x003f, 0x8055, 0x8080, 0x0880]); +testSerialization( 0x, [0x02ff, 0x003f, 0xff55, 0x, 0x0fff]); + testSerialization("", [0x02ff, 0x003f, 0x0053]); testSerialization("abc", [0x02ff, 0x003f, 0x0353, 0x6261, 0x0063]); testSerialization({integer: 123}, [0x02ff, 0x003f, 0x3f6f, 0x5301, 0x6907, Modified: trunk/LayoutTests/storage/indexeddb/structured-clone-expected.txt (144723 => 144724) --- trunk/LayoutTests/storage/indexeddb/structured-clone-expected.txt 2013-03-05 06:14:18 UTC (rev 144723) +++ trunk/LayoutTests/storage/indexeddb/structured-clone-expected.txt 2013-03-05 06:31:42 UTC (rev 144724) @@ -70,6 +70,34 @@ store.get('key') PASS is(test_data, result) is true +Testing: -0x +transaction = db.transaction('storeName', 'readwrite') +store = transaction.objectStore('storeName') +store.put(value, 'key') +store.get('key
[webkit-changes] [144125] trunk/Source/WebCore
Title: [144125] trunk/Source/WebCore Revision 144125 Author jsb...@chromium.org Date 2013-02-26 16:45:56 -0800 (Tue, 26 Feb 2013) Log Message IndexedDB: Add temporary diagnostic code to IDBRequest.result getter https://bugs.webkit.org/show_bug.cgi?id=110916 Reviewed by Kentaro Hara. Implement a custom getter for IDBRequest.result that does one additional hidden property set, to try and isolate the flaky crash seen in wkbug.com/105363 which is difficult to repro locally. If the crash moves to the new line it will point the investigation in a new direction. Also add an assertion that probes string wrappers (the expected type). * Modules/indexeddb/IDBRequest.idl: Mark attribute as [Custom] * WebCore.gypi: New file. * bindings/v8/custom/V8IDBRequestCustom.cpp: Added. (WebCore::V8IDBRequest::resultAttrGetterCustom): Implementation - copy/paste from generated code, plus extra setNamedHiddenReference call and string ASSERT. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/IDBRequest.idl trunk/Source/WebCore/WebCore.gypi Added Paths trunk/Source/WebCore/bindings/v8/custom/V8IDBRequestCustom.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (144124 => 144125) --- trunk/Source/WebCore/ChangeLog 2013-02-27 00:44:58 UTC (rev 144124) +++ trunk/Source/WebCore/ChangeLog 2013-02-27 00:45:56 UTC (rev 144125) @@ -1,3 +1,22 @@ +2013-02-26 Joshua Bell + +IndexedDB: Add temporary diagnostic code to IDBRequest.result getter +https://bugs.webkit.org/show_bug.cgi?id=110916 + +Reviewed by Kentaro Hara. + +Implement a custom getter for IDBRequest.result that does one additional hidden +property set, to try and isolate the flaky crash seen in wkbug.com/105363 which is +difficult to repro locally. If the crash moves to the new line it will point +the investigation in a new direction. Also add an assertion that probes string +wrappers (the expected type). + +* Modules/indexeddb/IDBRequest.idl: Mark attribute as [Custom] +* WebCore.gypi: New file. +* bindings/v8/custom/V8IDBRequestCustom.cpp: Added. +(WebCore::V8IDBRequest::resultAttrGetterCustom): Implementation - copy/paste from +generated code, plus extra setNamedHiddenReference call and string ASSERT. + 2013-02-26 Anders Carlsson Add a couple of symbols needed by WebKit2. Modified: trunk/Source/WebCore/Modules/indexeddb/IDBRequest.idl (144124 => 144125) --- trunk/Source/WebCore/Modules/indexeddb/IDBRequest.idl 2013-02-27 00:44:58 UTC (rev 144124) +++ trunk/Source/WebCore/Modules/indexeddb/IDBRequest.idl 2013-02-27 00:45:56 UTC (rev 144125) @@ -33,7 +33,7 @@ EventTarget, JSNoStaticTables ] interface IDBRequest { -readonly attribute IDBAny result +[V8Custom] readonly attribute IDBAny result getter raises (DOMException); readonly attribute DOMError error getter raises (DOMException); Modified: trunk/Source/WebCore/WebCore.gypi (144124 => 144125) --- trunk/Source/WebCore/WebCore.gypi 2013-02-27 00:44:58 UTC (rev 144124) +++ trunk/Source/WebCore/WebCore.gypi 2013-02-27 00:45:56 UTC (rev 144125) @@ -1384,6 +1384,7 @@ 'bindings/v8/custom/V8HTMLSelectElementCustom.h', 'bindings/v8/custom/V8HistoryCustom.cpp', 'bindings/v8/custom/V8IDBAnyCustom.cpp', +'bindings/v8/custom/V8IDBRequestCustom.cpp', 'bindings/v8/custom/V8ImageDataCustom.cpp', 'bindings/v8/custom/V8InjectedScriptHostCustom.cpp', 'bindings/v8/custom/V8InjectedScriptManager.cpp', Added: trunk/Source/WebCore/bindings/v8/custom/V8IDBRequestCustom.cpp (0 => 144125) --- trunk/Source/WebCore/bindings/v8/custom/V8IDBRequestCustom.cpp (rev 0) +++ trunk/Source/WebCore/bindings/v8/custom/V8IDBRequestCustom.cpp 2013-02-27 00:45:56 UTC (rev 144125) @@ -0,0 +1,70 @@ +/* + * Copyright (C) 2013 Google Inc. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following disclaimer + * in the documentation and/or other materials provided with the + * distribution. + * * Neither the name of Google Inc. nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
[webkit-changes] [144075] trunk
Title: [144075] trunk Revision 144075 Author jsb...@chromium.org Date 2013-02-26 10:44:04 -0800 (Tue, 26 Feb 2013) Log Message IndexedDB: IDBObjectStore.index() doesn't report errors after deleteIndex() https://bugs.webkit.org/show_bug.cgi?id=110792 Reviewed by Tony Chang. Source/WebCore: The object store's metadata wasn't updated if the index hadn't been accessed by script and hence placed in the name->object map. Make sure the metadata is always updated. Test: storage/indexeddb/deleteIndex-bug110792.html * Modules/indexeddb/IDBObjectStore.cpp: (WebCore::IDBObjectStore::deleteIndex): Always update the object store's metadata. LayoutTests: Added regression test for bug. * storage/indexeddb/deleteIndex-bug110792-expected.txt: Added. * storage/indexeddb/deleteIndex-bug110792.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/IDBObjectStore.cpp Added Paths trunk/LayoutTests/storage/indexeddb/deleteIndex-bug110792-expected.txt trunk/LayoutTests/storage/indexeddb/deleteIndex-bug110792.html Diff Modified: trunk/LayoutTests/ChangeLog (144074 => 144075) --- trunk/LayoutTests/ChangeLog 2013-02-26 18:43:24 UTC (rev 144074) +++ trunk/LayoutTests/ChangeLog 2013-02-26 18:44:04 UTC (rev 144075) @@ -1,3 +1,15 @@ +2013-02-26 Joshua Bell + +IndexedDB: IDBObjectStore.index() doesn't report errors after deleteIndex() +https://bugs.webkit.org/show_bug.cgi?id=110792 + +Reviewed by Tony Chang. + +Added regression test for bug. + +* storage/indexeddb/deleteIndex-bug110792-expected.txt: Added. +* storage/indexeddb/deleteIndex-bug110792.html: Added. + 2013-02-26 Sheriff Bot Unreviewed, rolling out r144019. Added: trunk/LayoutTests/storage/indexeddb/deleteIndex-bug110792-expected.txt (0 => 144075) --- trunk/LayoutTests/storage/indexeddb/deleteIndex-bug110792-expected.txt (rev 0) +++ trunk/LayoutTests/storage/indexeddb/deleteIndex-bug110792-expected.txt 2013-02-26 18:44:04 UTC (rev 144075) @@ -0,0 +1,33 @@ +Ensure IndexedDB's IDBObjectStore.deleteIndex() works if IDBIndex object has not been fetched - regression test for bug 110792. + +On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". + + +indexedDB = self.indexedDB || self.webkitIndexedDB || self.mozIndexedDB || self.msIndexedDB || self.OIndexedDB; + +dbname = "deleteIndex-bug110792.html" +indexedDB.deleteDatabase(dbname) +indexedDB.open(dbname, 1) + +onFirstUpgradeNeeded(): +db = event.target.result +store = db.createObjectStore('store') +store.createIndex('index', 'keyPath') + +closeAndReOpen(): +db.close() + +indexedDB.open(dbname, 2) + +onSecondUpgradeNeeded(): +db = event.target.result +store = event.target.transaction.objectStore('store') +store.deleteIndex('index') +Expecting exception from store.index('index') +PASS Exception was thrown. +PASS code is DOMException.NOT_FOUND_ERR +PASS ename is 'NotFoundError' +PASS successfullyParsed is true + +TEST COMPLETE + Added: trunk/LayoutTests/storage/indexeddb/deleteIndex-bug110792.html (0 => 144075) --- trunk/LayoutTests/storage/indexeddb/deleteIndex-bug110792.html (rev 0) +++ trunk/LayoutTests/storage/indexeddb/deleteIndex-bug110792.html 2013-02-26 18:44:04 UTC (rev 144075) @@ -0,0 +1,42 @@ + + + +description("Ensure IndexedDB's IDBObjectStore.deleteIndex() works if IDBIndex object has not been fetched - regression test for bug 110792."); + +indexedDBTest(onFirstUpgradeNeeded, closeAndReOpen, {version: 1}); + +function onFirstUpgradeNeeded(evt) +{ +preamble(evt); +evalAndLog("db = event.target.result"); +evalAndLog("store = db.createObjectStore('store')"); +evalAndLog("store.createIndex('index', 'keyPath')"); +} + +function closeAndReOpen() +{ +preamble(); +evalAndLog("db.close()"); +debug(""); +request = evalAndLog("indexedDB.open(dbname, 2)"); +request._onblocked_ = unexpectedBlockedCallback; +request._onerror_ = unexpectedErrorCallback; +request._onupgradeneeded_ = onSecondUpgradeNeeded; +request._onsuccess_ = finishJSTest; +} + +function onSecondUpgradeNeeded(evt) +{ +preamble(evt); +evalAndLog("db = event.target.result"); +evalAndLog("store = event.target.transaction.objectStore('store')"); +// Do NOT add a call to store.index('index') here (e.g. to assert it exists) +// or the bug disappears. +evalAndLog("store.deleteIndex('index')"); +evalAndExpectException("store.index('index')", "DOMException.NOT_FOUND_ERR", "'NotFoundError'"); +} + + +
[webkit-changes] [143425] trunk/Tools
Title: [143425] trunk/Tools Revision 143425 Author jsb...@chromium.org Date 2013-02-19 18:49:15 -0800 (Tue, 19 Feb 2013) Log Message Remove warning from run-bindings-tests https://bugs.webkit.org/show_bug.cgi?id=110285 Reviewed by Kentaro Hara. Since wkrev.com/139331 run-bindings-tests has been harmlessly emitting "Unknown option: idlattributesfile". That option was removed from bindings/scripts/preprocess-idls.pl but was still being passed by the test script. Remove it. * Scripts/webkitpy/bindings/main.py: (BindingsTests.generate_supplemental_dependency): Remove unused arg. Modified Paths trunk/Tools/ChangeLog trunk/Tools/Scripts/webkitpy/bindings/main.py Diff Modified: trunk/Tools/ChangeLog (143424 => 143425) --- trunk/Tools/ChangeLog 2013-02-20 02:46:28 UTC (rev 143424) +++ trunk/Tools/ChangeLog 2013-02-20 02:49:15 UTC (rev 143425) @@ -1,3 +1,18 @@ +2013-02-19 Joshua Bell + +Remove warning from run-bindings-tests +https://bugs.webkit.org/show_bug.cgi?id=110285 + +Reviewed by Kentaro Hara. + +Since wkrev.com/139331 run-bindings-tests has been harmlessly emitting +"Unknown option: idlattributesfile". That option was removed from +bindings/scripts/preprocess-idls.pl but was still being passed by +the test script. Remove it. + +* Scripts/webkitpy/bindings/main.py: +(BindingsTests.generate_supplemental_dependency): Remove unused arg. + 2013-02-19 Elliott Sprehn Unreviewed. Add myself to watch lists. Modified: trunk/Tools/Scripts/webkitpy/bindings/main.py (143424 => 143425) --- trunk/Tools/Scripts/webkitpy/bindings/main.py 2013-02-20 02:46:28 UTC (rev 143424) +++ trunk/Tools/Scripts/webkitpy/bindings/main.py 2013-02-20 02:49:15 UTC (rev 143425) @@ -75,8 +75,7 @@ 'WebCore/bindings/scripts/preprocess-idls.pl', '--idlFilesList', idl_files_list[1], '--defines', '', - '--supplementalDependencyFile', supplemental_dependency_file, - '--idlAttributesFile', 'WebCore/bindings/scripts/IDLAttributes.txt'] + '--supplementalDependencyFile', supplemental_dependency_file] exit_code = 0 try: ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [143347] trunk/Source
Title: [143347] trunk/Source Revision 143347 Author jsb...@chromium.org Date 2013-02-19 09:42:55 -0800 (Tue, 19 Feb 2013) Log Message IndexedDB: additional checks on LevelDB decoding https://bugs.webkit.org/show_bug.cgi?id=109711 Reviewed by Tony Chang. Source/WebCore: Watch out for decoding errors caused by corrupted data, and exit various decode/compare operations earlier. Covered by existing LayoutTests and Chromium's webkit_unit_tests * Modules/indexeddb/IDBLevelDBCoding.cpp: (WebCore::IDBLevelDBCoding::decodeStringWithLength): Bail if length is negative. (WebCore::IDBLevelDBCoding::compareEncodedStringsWithLength): Distinguish error case. (WebCore::IDBLevelDBCoding::extractEncodedIDBKey): Bail if length is negative. (WebCore::IDBLevelDBCoding::compareEncodedIDBKeys): Distinguish error case. (WebCore::IDBLevelDBCoding::compare): Plumb through "ok". (WebCore::IDBLevelDBCoding::ObjectStoreDataKey::compare): Ditto. (WebCore::IDBLevelDBCoding::ExistsEntryKey::compare): Ditto. (WebCore::IDBLevelDBCoding::IndexDataKey::compare): Ditto. * Modules/indexeddb/IDBLevelDBCoding.h: Updated method signatures. Source/WebKit/chromium: * tests/IDBLevelDBCodingTest.cpp: Update test with new method signatures. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/IDBLevelDBCoding.cpp trunk/Source/WebCore/Modules/indexeddb/IDBLevelDBCoding.h trunk/Source/WebKit/chromium/ChangeLog trunk/Source/WebKit/chromium/tests/IDBLevelDBCodingTest.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (143346 => 143347) --- trunk/Source/WebCore/ChangeLog 2013-02-19 17:12:41 UTC (rev 143346) +++ trunk/Source/WebCore/ChangeLog 2013-02-19 17:42:55 UTC (rev 143347) @@ -1,3 +1,26 @@ +2013-02-19 Joshua Bell + +IndexedDB: additional checks on LevelDB decoding +https://bugs.webkit.org/show_bug.cgi?id=109711 + +Reviewed by Tony Chang. + +Watch out for decoding errors caused by corrupted data, and exit various +decode/compare operations earlier. + +Covered by existing LayoutTests and Chromium's webkit_unit_tests + +* Modules/indexeddb/IDBLevelDBCoding.cpp: +(WebCore::IDBLevelDBCoding::decodeStringWithLength): Bail if length is negative. +(WebCore::IDBLevelDBCoding::compareEncodedStringsWithLength): Distinguish error case. +(WebCore::IDBLevelDBCoding::extractEncodedIDBKey): Bail if length is negative. +(WebCore::IDBLevelDBCoding::compareEncodedIDBKeys): Distinguish error case. +(WebCore::IDBLevelDBCoding::compare): Plumb through "ok". +(WebCore::IDBLevelDBCoding::ObjectStoreDataKey::compare): Ditto. +(WebCore::IDBLevelDBCoding::ExistsEntryKey::compare): Ditto. +(WebCore::IDBLevelDBCoding::IndexDataKey::compare): Ditto. +* Modules/indexeddb/IDBLevelDBCoding.h: Updated method signatures. + 2013-02-19 ChangSeok Oh [GTK][AC] Implement keyframe animations with clutter ac backend Modified: trunk/Source/WebCore/Modules/indexeddb/IDBLevelDBCoding.cpp (143346 => 143347) --- trunk/Source/WebCore/Modules/indexeddb/IDBLevelDBCoding.cpp 2013-02-19 17:12:41 UTC (rev 143346) +++ trunk/Source/WebCore/Modules/indexeddb/IDBLevelDBCoding.cpp 2013-02-19 17:42:55 UTC (rev 143347) @@ -335,17 +335,15 @@ ASSERT(limit >= p); int64_t len; p = decodeVarInt(p, limit, len); -if (!p) +if (!p || len < 0 || p + len * 2 > limit) return 0; -if (p + len * 2 > limit) -return 0; foundString = decodeString(p, p + len * 2); p += len * 2; return p; } -int compareEncodedStringsWithLength(const char*& p, const char* limitP, const char*& q, const char* limitQ) +int compareEncodedStringsWithLength(const char*& p, const char* limitP, const char*& q, const char* limitQ, bool& ok) { ASSERT(&p != &q); ASSERT(limitP >= p); @@ -353,6 +351,10 @@ int64_t lenP, lenQ; p = decodeVarInt(p, limitP, lenP); q = decodeVarInt(q, limitQ, lenQ); +if (!p || !q || lenP < 0 || lenQ < 0) { +ok = false; +return 0; +} ASSERT(p && q); ASSERT(lenP >= 0); ASSERT(lenQ >= 0); @@ -364,9 +366,12 @@ p += lenP * 2; q += lenQ * 2; -if (p > limitP || q > limitQ) +if (p > limitP || q > limitQ) { +ok = false; return 0; +} +ok = true; const size_t lmin = static_cast(lenP < lenQ ? lenP : lenQ); if (int x = memcmp(startP, startQ, lmin * 2)) return x; @@ -462,10 +467,8 @@ case IDBKeyArrayTypeByte: { int64_t length; p = decodeVarInt(p, limit, length); -if (!p) +if (!p || length < 0) return 0; -if (length < 0) -return 0; IDBKey::KeyArray array; while (length--) { RefPtr key; @@ -522,10 +525,8 @@ case IDBKeyArrayTypeByte: { int64_t length; p = decodeVarInt(p, limit, length); -if (!p) +if (!p || length < 0)
[webkit-changes] [142938] trunk/Source/WebCore
Title: [142938] trunk/Source/WebCore Revision 142938 Author jsb...@chromium.org Date 2013-02-14 16:36:52 -0800 (Thu, 14 Feb 2013) Log Message [V8] IndexedDB: Remove unused creationContext paramter from idbKeyToV8Value https://bugs.webkit.org/show_bug.cgi?id=109870 Reviewed by Kentaro Hara. This parameter was left over from when the function was toV8(IDBKey). Remove it. No new tests - just removing dead code. * bindings/v8/IDBBindingUtilities.cpp: (WebCore::idbKeyToV8Value): Remove unused parameter. (WebCore::injectIDBKeyIntoScriptValue): No need for dummy handle. (WebCore::idbKeyToScriptValue): No need for dummy handle. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/bindings/v8/IDBBindingUtilities.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (142937 => 142938) --- trunk/Source/WebCore/ChangeLog 2013-02-15 00:35:13 UTC (rev 142937) +++ trunk/Source/WebCore/ChangeLog 2013-02-15 00:36:52 UTC (rev 142938) @@ -1,3 +1,19 @@ +2013-02-14 Joshua Bell + +[V8] IndexedDB: Remove unused creationContext paramter from idbKeyToV8Value +https://bugs.webkit.org/show_bug.cgi?id=109870 + +Reviewed by Kentaro Hara. + +This parameter was left over from when the function was toV8(IDBKey). Remove it. + +No new tests - just removing dead code. + +* bindings/v8/IDBBindingUtilities.cpp: +(WebCore::idbKeyToV8Value): Remove unused parameter. +(WebCore::injectIDBKeyIntoScriptValue): No need for dummy handle. +(WebCore::idbKeyToScriptValue): No need for dummy handle. + 2013-02-14 Kondapally Kalyan [WebGL][Qt] regression:r142786 Qt Build fix for Arm and Windows. Modified: trunk/Source/WebCore/bindings/v8/IDBBindingUtilities.cpp (142937 => 142938) --- trunk/Source/WebCore/bindings/v8/IDBBindingUtilities.cpp 2013-02-15 00:35:13 UTC (rev 142937) +++ trunk/Source/WebCore/bindings/v8/IDBBindingUtilities.cpp 2013-02-15 00:36:52 UTC (rev 142938) @@ -39,7 +39,7 @@ namespace WebCore { -static v8::Handle idbKeyToV8Value(IDBKey* key, v8::Handle creationContext, v8::Isolate* isolate) +static v8::Handle idbKeyToV8Value(IDBKey* key, v8::Isolate* isolate) { if (!key) { // This should be undefined, not null. @@ -62,7 +62,7 @@ { v8::Local array = v8::Array::New(key->array().size()); for (size_t i = 0; i < key->array().size(); ++i) -array->Set(i, idbKeyToV8Value(key->array()[i].get(), creationContext, isolate)); +array->Set(i, idbKeyToV8Value(key->array()[i].get(), isolate)); return array; } } @@ -275,7 +275,7 @@ if (parent.IsEmpty()) return false; -if (!set(parent, keyPathElements.last(), idbKeyToV8Value(key.get(), v8::Handle(), isolate), isolate)) +if (!set(parent, keyPathElements.last(), idbKeyToV8Value(key.get(), isolate), isolate)) return false; return true; @@ -301,7 +301,7 @@ { ASSERT(v8::Context::InContext()); v8::HandleScope handleScope; -v8::Handle v8Value(idbKeyToV8Value(key.get(), v8::Handle(), state->context()->GetIsolate())); +v8::Handle v8Value(idbKeyToV8Value(key.get(), state->context()->GetIsolate())); return ScriptValue(v8Value); } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [142653] trunk/Source/WebKit/chromium
Title: [142653] trunk/Source/WebKit/chromium Revision 142653 Author jsb...@chromium.org Date 2013-02-12 12:23:04 -0800 (Tue, 12 Feb 2013) Log Message [Chromium] IndexedDB/Worker crash during shutdown https://bugs.webkit.org/show_bug.cgi?id=109467 Reviewed by Tony Chang. If the message queue has already been terminated, don't bother scheduling a new error event that will never be delivered. Speculative fix for the issue, which only repros in multiprocess ports and so far only on some platforms. * src/IDBFactoryBackendProxy.cpp: (WebKit::IDBFactoryBackendProxy::allowIndexedDB): Early exit. Modified Paths trunk/Source/WebKit/chromium/ChangeLog trunk/Source/WebKit/chromium/src/IDBFactoryBackendProxy.cpp Diff Modified: trunk/Source/WebKit/chromium/ChangeLog (142652 => 142653) --- trunk/Source/WebKit/chromium/ChangeLog 2013-02-12 20:14:06 UTC (rev 142652) +++ trunk/Source/WebKit/chromium/ChangeLog 2013-02-12 20:23:04 UTC (rev 142653) @@ -1,3 +1,18 @@ +2013-02-12 Joshua Bell + +[Chromium] IndexedDB/Worker crash during shutdown +https://bugs.webkit.org/show_bug.cgi?id=109467 + +Reviewed by Tony Chang. + +If the message queue has already been terminated, don't bother scheduling +a new error event that will never be delivered. Speculative fix for the +issue, which only repros in multiprocess ports and so far only on some +platforms. + +* src/IDBFactoryBackendProxy.cpp: +(WebKit::IDBFactoryBackendProxy::allowIndexedDB): Early exit. + 2013-02-12 Zan Dobersek Remove ENABLE_XHR_RESPONSE_BLOB handling from various build systems Modified: trunk/Source/WebKit/chromium/src/IDBFactoryBackendProxy.cpp (142652 => 142653) --- trunk/Source/WebKit/chromium/src/IDBFactoryBackendProxy.cpp 2013-02-12 20:14:06 UTC (rev 142652) +++ trunk/Source/WebKit/chromium/src/IDBFactoryBackendProxy.cpp 2013-02-12 20:23:04 UTC (rev 142653) @@ -182,9 +182,9 @@ // Either the bridge returns, or the queue gets terminated. if (runLoop.runInMode(workerContext, mode) == MessageQueueTerminated) { bridge->cancel(); -allowed = false; -} else -allowed = bridge->result(); +return false; +} +allowed = bridge->result(); } if (!allowed) ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [142513] trunk
Title: [142513] trunk Revision 142513 Author jsb...@chromium.org Date 2013-02-11 14:13:19 -0800 (Mon, 11 Feb 2013) Log Message IndexedDB: database connections don't close after versionchange transaction aborts https://bugs.webkit.org/show_bug.cgi?id=102298 Reviewed by Tony Chang. Source/WebCore: Per spec, close the database if the "versionchange" transaction aborts. Tests: storage/indexeddb/aborted-versionchange-closes.html storage/indexeddb/lazy-index-population.html storage/objectstore-basics.html * Modules/indexeddb/IDBTransaction.cpp: (WebCore::IDBTransaction::onAbort): Tell the IDBDatabase (connection) to close if this was a "versionchange" transaction. LayoutTests: Added dedicated test, updated tests dependent on buggy behavior. * storage/indexeddb/aborted-versionchange-closes-expected.txt: Added. * storage/indexeddb/aborted-versionchange-closes.html: Added. * storage/indexeddb/lazy-index-population-expected.txt: * storage/indexeddb/lazy-index-population.html: Remove manual closing. * storage/indexeddb/objectstore-basics-expected.txt: * storage/indexeddb/objectstore-basics-workers-expected.txt: * storage/indexeddb/resources/aborted-versionchange-closes.js: Added. * storage/indexeddb/resources/objectstore-basics.js: Removed dependency on bug. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/storage/indexeddb/lazy-index-population-expected.txt trunk/LayoutTests/storage/indexeddb/lazy-index-population.html trunk/LayoutTests/storage/indexeddb/objectstore-basics-expected.txt trunk/LayoutTests/storage/indexeddb/objectstore-basics-workers-expected.txt trunk/LayoutTests/storage/indexeddb/resources/objectstore-basics.js trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/IDBTransaction.cpp Added Paths trunk/LayoutTests/storage/indexeddb/aborted-versionchange-closes-expected.txt trunk/LayoutTests/storage/indexeddb/aborted-versionchange-closes.html trunk/LayoutTests/storage/indexeddb/resources/aborted-versionchange-closes.js Diff Modified: trunk/LayoutTests/ChangeLog (142512 => 142513) --- trunk/LayoutTests/ChangeLog 2013-02-11 21:59:31 UTC (rev 142512) +++ trunk/LayoutTests/ChangeLog 2013-02-11 22:13:19 UTC (rev 142513) @@ -1,3 +1,21 @@ +2013-02-11 Joshua Bell + +IndexedDB: database connections don't close after versionchange transaction aborts +https://bugs.webkit.org/show_bug.cgi?id=102298 + +Reviewed by Tony Chang. + +Added dedicated test, updated tests dependent on buggy behavior. + +* storage/indexeddb/aborted-versionchange-closes-expected.txt: Added. +* storage/indexeddb/aborted-versionchange-closes.html: Added. +* storage/indexeddb/lazy-index-population-expected.txt: +* storage/indexeddb/lazy-index-population.html: Remove manual closing. +* storage/indexeddb/objectstore-basics-expected.txt: +* storage/indexeddb/objectstore-basics-workers-expected.txt: +* storage/indexeddb/resources/aborted-versionchange-closes.js: Added. +* storage/indexeddb/resources/objectstore-basics.js: Removed dependency on bug. + 2013-02-11 Christophe Dumez [EFL] fast/forms/number/number-l10n-input.html is failing Added: trunk/LayoutTests/storage/indexeddb/aborted-versionchange-closes-expected.txt (0 => 142513) --- trunk/LayoutTests/storage/indexeddb/aborted-versionchange-closes-expected.txt (rev 0) +++ trunk/LayoutTests/storage/indexeddb/aborted-versionchange-closes-expected.txt 2013-02-11 22:13:19 UTC (rev 142513) @@ -0,0 +1,46 @@ +Test that an aborted 'versionchange' transaction closes the connection. + +On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". + + +indexedDB = self.indexedDB || self.webkitIndexedDB || self.mozIndexedDB || self.msIndexedDB || self.OIndexedDB; + +dbname = "aborted-versionchange-closes.html" +indexedDB.deleteDatabase(dbname) +indexedDB.open(dbname, 1) + +prepareDatabase(): +db = event.target.result +db.createObjectStore('store') + +onOpen(): +db = event.target.result +db.close() + +openAgain(): +request = indexedDB.open(dbname, 2) + +onUpgradeNeeded(): +db = event.target.result +transaction = event.target.transaction +sawTransactionAbort = false + +onTransactionAbort(): +sawTransactionAbort = true +creating a transaction should fail because connection is closed: +Expecting exception from db.transaction('store') +PASS Exception was thrown. +PASS code is DOMException.INVALID_STATE_ERR +PASS ename is 'InvalidStateError' + +onOpenError(): +PASS sawTransactionAbort is true +creating a transaction should fail because connection is closed: +Expecting exception from db.transaction('store') +PASS Exception was thrown. +PASS code is DOMException.INVALID_STATE_ERR +PASS ename is 'InvalidStateError' +PASS successfullyParsed is true + +TEST COMPLETE + Added: trunk/LayoutTests/storage/indexeddb/aborted-versionchange-closes.html (0 => 142513) --- trunk/LayoutTests/storage/i
[webkit-changes] [142483] trunk
Title: [142483] trunk Revision 142483 Author jsb...@chromium.org Date 2013-02-11 09:28:22 -0800 (Mon, 11 Feb 2013) Log Message [V8] IndexedDB: Minor GC can collect IDBDatabase wrapper with versionchange handler 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): Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/IDBDatabase.cpp trunk/Source/WebCore/Modules/indexeddb/IDBDatabase.h trunk/Source/WebCore/Modules/indexeddb/IDBRequest.cpp trunk/Source/WebCore/Modules/indexeddb/IDBTransaction.cpp Added Paths trunk/LayoutTests/storage/indexeddb/database-wrapper-expected.txt trunk/LayoutTests/storage/indexeddb/database-wrapper.html trunk/LayoutTests/storage/indexeddb/resources/database-wrapper.js Diff Modified: trunk/LayoutTests/ChangeLog (142482 => 142483) --- trunk/LayoutTests/ChangeLog 2013-02-11 17:17:45 UTC (rev 142482) +++ trunk/LayoutTests/ChangeLog 2013-02-11 17:28:22 UTC (rev 142483) @@ -1,3 +1,23 @@ +2013-02-11 Joshua Bell + +[V8] IndexedDB: Minor GC can collect IDBDatabase wrapper with versionchange handler +https://bugs.webkit.org/show_bug.cgi?id=108670 + +Reviewed by Kentaro Hara. + +* 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): + 2013-02-11 Christophe Dumez Unreviewed EFL gardening. Added: trunk/LayoutTests/storage/indexeddb/database-wrapper-expected.txt (0 => 142483) --- trunk/LayoutTests/storage/indexeddb/database-wrapper-expected.txt (rev 0) +++ trunk/LayoutTests/storage/indexeddb/database-wrapper-expected.txt 2013-02-11 17:28:22 UTC (rev 142483) @@ -0,0 +1,38 @@ +Ensure IDBDatabase wrapper isn't prematurely collected. + +On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". + + +dbname = "database-wrapper.html" +indexedDB.deleteDatabase(dbname) + +openDB(): +indexedDB.open(dbname, 1) + +onUpgradeNeeded(): +db = event.target.result +db.createObjectStore('store').createIndex('index', 'keyPath') +db = null + +openSuccess(): +sawVersionChangeEvent = false + +collectGarbage(): +self.gc() + +openAgain(): +indexedDB.open(dbname, 2) + +onVersionChange(): +event.target.close() +sawVersionChangeEvent = true + +onBlocked(): +FIXME: Blocked event shouldn't fire. http://wkbug.com/71130 + +openAgainSuccess(): +PASS sawVersionChangeEvent is true +PASS successfullyParsed is true + +TEST COMPLETE + Added: trunk/LayoutTests/storage/indexeddb/database-wrapper.html (0 => 142483) --- trunk/LayoutTests/storage/indexeddb/database-wrapper.html (rev 0) +++ trunk/LayoutTests/storage/indexeddb/database-wrapper.html 2013-02-11 17:28:22 UTC (rev 142483) @@ -0,0 +1,10 @@ + + +
[webkit-changes] [142324] trunk/LayoutTests
Title: [142324] trunk/LayoutTests Revision 142324 Author jsb...@chromium.org Date 2013-02-08 14:48:46 -0800 (Fri, 08 Feb 2013) Log Message IndexedDB: De-flake open-during-transaction layout test https://bugs.webkit.org/show_bug.cgi?id=109072 Reviewed by Tony Chang. This test was observed to be flaky in local runs; sometimes the transaction would terminate after the third open() call rather than the second, resulting in a TEXT difference. Added code to keep the transaction alive until all of the open() calls are complete, and changed expectations to match. * storage/indexeddb/open-during-transaction-expected.txt: * storage/indexeddb/resources/open-during-transaction.js: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/storage/indexeddb/open-during-transaction-expected.txt trunk/LayoutTests/storage/indexeddb/resources/open-during-transaction.js Diff Modified: trunk/LayoutTests/ChangeLog (142323 => 142324) --- trunk/LayoutTests/ChangeLog 2013-02-08 22:35:28 UTC (rev 142323) +++ trunk/LayoutTests/ChangeLog 2013-02-08 22:48:46 UTC (rev 142324) @@ -1,3 +1,18 @@ +2013-02-08 Joshua Bell + +IndexedDB: De-flake open-during-transaction layout test +https://bugs.webkit.org/show_bug.cgi?id=109072 + +Reviewed by Tony Chang. + +This test was observed to be flaky in local runs; sometimes the transaction +would terminate after the third open() call rather than the second, resulting +in a TEXT difference. Added code to keep the transaction alive until all of +the open() calls are complete, and changed expectations to match. + +* storage/indexeddb/open-during-transaction-expected.txt: +* storage/indexeddb/resources/open-during-transaction.js: + 2013-02-08 Stephen Chenney [Chromium] Expectations as a result of removing Skia code suppressions Modified: trunk/LayoutTests/storage/indexeddb/open-during-transaction-expected.txt (142323 => 142324) --- trunk/LayoutTests/storage/indexeddb/open-during-transaction-expected.txt 2013-02-08 22:35:28 UTC (rev 142323) +++ trunk/LayoutTests/storage/indexeddb/open-during-transaction-expected.txt 2013-02-08 22:48:46 UTC (rev 142324) @@ -14,7 +14,7 @@ starting transaction state = 'starting' trans = dbc1.transaction('storeName', 'readwrite') -trans.objectStore('storeName').put('value', 'key') +the transaction is kept alive with a series of puts until opens are complete trying to open the same database openreq2 = indexedDB.open(dbname) @@ -26,12 +26,13 @@ PASS state is "starting" state = 'open2complete' -transaction complete -PASS state is "open2complete" - openreq3.onsuccess PASS state is "open2complete" state = 'open3complete' + +transaction complete +PASS state is "open3complete" + PASS successfullyParsed is true TEST COMPLETE Modified: trunk/LayoutTests/storage/indexeddb/resources/open-during-transaction.js (142323 => 142324) --- trunk/LayoutTests/storage/indexeddb/resources/open-during-transaction.js 2013-02-08 22:35:28 UTC (rev 142323) +++ trunk/LayoutTests/storage/indexeddb/resources/open-during-transaction.js 2013-02-08 22:48:46 UTC (rev 142324) @@ -21,13 +21,24 @@ debug("starting transaction"); evalAndLog("state = 'starting'"); evalAndLog("trans = dbc1.transaction('storeName', 'readwrite')"); -evalAndLog("trans.objectStore('storeName').put('value', 'key')"); + +debug("the transaction is kept alive with a series of puts until opens are complete"); +(function keepAlive() { +// Don't log, since this may run an arbitrary number of times. +if (state !== 'open3complete') { +var request = trans.objectStore('storeName').put('value', 'key'); +request._onerror_ = unexpectedErrorCallback; +request._onsuccess_ = keepAlive; +} +}()); + trans._onabort_ = unexpectedAbortCallback; trans._onerror_ = unexpectedErrorCallback; trans._oncomplete_ = function (e) { debug("transaction complete"); -shouldBeEqualToString("state", "open2complete"); +shouldBeEqualToString("state", "open3complete"); debug(""); +finishJSTest(); }; debug(""); @@ -44,7 +55,7 @@ shouldBeEqualToString("state", "starting"); evalAndLog("state = 'open2complete'"); debug(""); -} +}; debug(""); debug("trying to open a different database"); @@ -54,7 +65,7 @@ debug("openreq3.onsuccess"); shouldBeEqualToString("state", "open2complete"); evalAndLog("state = 'open3complete'"); -finishJSTest(); -} +debug(""); +}; debug(""); } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [141351] trunk/Source/WebCore
Title: [141351] trunk/Source/WebCore Revision 141351 Author jsb...@chromium.org Date 2013-01-30 17:31:12 -0800 (Wed, 30 Jan 2013) Log Message IndexedDB: Remove speculative dispatchEvent crash fix now that root cause is addressed https://bugs.webkit.org/show_bug.cgi?id=108131 Reviewed by Tony Chang. A patch was landed in r140027 to prevent a null pointer crash in IDBRequest::dispatchEvent and confirm the source of the crash (which we couldn't repro locally). Following confirmation from user reports, the root cause was tracked down to a race condition in MessageQueue, and was fixed in r140483. This patch is no longer needed, and there's always been an ASSERT in place to catch regressions while debugging. No new tests - no behavior change. * Modules/indexeddb/IDBRequest.cpp: (WebCore::IDBRequest::dispatchEvent): Remove extraneous test. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/IDBRequest.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (141350 => 141351) --- trunk/Source/WebCore/ChangeLog 2013-01-31 01:26:22 UTC (rev 141350) +++ trunk/Source/WebCore/ChangeLog 2013-01-31 01:31:12 UTC (rev 141351) @@ -1,3 +1,22 @@ +2013-01-30 Joshua Bell + +IndexedDB: Remove speculative dispatchEvent crash fix now that root cause is addressed +https://bugs.webkit.org/show_bug.cgi?id=108131 + +Reviewed by Tony Chang. + +A patch was landed in r140027 to prevent a null pointer crash in +IDBRequest::dispatchEvent and confirm the source of the crash (which +we couldn't repro locally). Following confirmation from user reports, +the root cause was tracked down to a race condition in MessageQueue, +and was fixed in r140483. This patch is no longer needed, and there's +always been an ASSERT in place to catch regressions while debugging. + +No new tests - no behavior change. + +* Modules/indexeddb/IDBRequest.cpp: +(WebCore::IDBRequest::dispatchEvent): Remove extraneous test. + 2013-01-30 Joe Mason [BlackBerry] Store both proxy and host credentials simultaneously for NetworkJob Modified: trunk/Source/WebCore/Modules/indexeddb/IDBRequest.cpp (141350 => 141351) --- trunk/Source/WebCore/Modules/indexeddb/IDBRequest.cpp 2013-01-31 01:26:22 UTC (rev 141350) +++ trunk/Source/WebCore/Modules/indexeddb/IDBRequest.cpp 2013-01-31 01:31:12 UTC (rev 141351) @@ -441,13 +441,6 @@ ASSERT(event->target() == this); ASSERT_WITH_MESSAGE(m_readyState < DONE, "When dispatching event %s, m_readyState < DONE(%d), was %d", event->type().string().utf8().data(), DONE, m_readyState); -// FIXME: This method should not be called if stop() was previously called, -// but there are crash reports (no local repro) indicating a null pointer -// deference in the following DOMRequestState::Scope constructor. If this -// resolves the crashes, track down the root cause, otherwise back this out. -if (m_contextStopped) -return false; - DOMRequestState::Scope scope(m_requestState); if (event->type() != eventNames().blockedEvent) ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [141338] trunk/Source/WebCore
Title: [141338] trunk/Source/WebCore Revision 141338 Author jsb...@chromium.org Date 2013-01-30 16:25:37 -0800 (Wed, 30 Jan 2013) Log Message IndexedDB: IDBKeyRange::isOnlyKey() does pointer equality comparison https://bugs.webkit.org/show_bug.cgi?id=107582 Reviewed by Tony Chang. Per the bug title, IDBKeyRange::isOnlyKey() was testing the upper/lower pointers to determine if this was a "trivial" range, which can be used to fast-path lookups. This is insufficient in multi-process ports where range values may be thrown across the wire. This is addressed by using the existing key equality tests. In addition, the bounds type check incorrectly checked m_lowerType == LowerBoundOpen, which meant the function could never return true (since upper == lower implies closed bounds). Therefore, the fast-path case wasn't used even in single-process ports (e.g. DRT). The slow-path case contructed a backing store cursor over the range, and exited early if the cursor yielded nothing. The fast-path case doesn't need to create a cursor, so needs to deal with lookup misses. This revealed two similar (but trivial) lurking bugs in the fast-path. No new behavior; covered by tests such as: storage/indexeddb/get-keyrange.html * Modules/indexeddb/IDBBackingStore.cpp: (WebCore::IDBBackingStore::getRecord): Handle backing store read miss case. * Modules/indexeddb/IDBDatabaseBackendImpl.cpp: (WebCore::GetOperation::perform): Handle backing store read miss case. * Modules/indexeddb/IDBKeyRange.cpp: (WebCore::IDBKeyRange::isOnlyKey): Compare keys by value, not pointer, correct type checks, add assertions. * Modules/indexeddb/IDBKeyRange.h: (IDBKeyRange): Move implementation to CPP file. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/IDBBackingStore.cpp trunk/Source/WebCore/Modules/indexeddb/IDBDatabaseBackendImpl.cpp trunk/Source/WebCore/Modules/indexeddb/IDBKeyRange.cpp trunk/Source/WebCore/Modules/indexeddb/IDBKeyRange.h Diff Modified: trunk/Source/WebCore/ChangeLog (141337 => 141338) --- trunk/Source/WebCore/ChangeLog 2013-01-31 00:05:31 UTC (rev 141337) +++ trunk/Source/WebCore/ChangeLog 2013-01-31 00:25:37 UTC (rev 141338) @@ -1,3 +1,35 @@ +2013-01-30 Joshua Bell + +IndexedDB: IDBKeyRange::isOnlyKey() does pointer equality comparison +https://bugs.webkit.org/show_bug.cgi?id=107582 + +Reviewed by Tony Chang. + +Per the bug title, IDBKeyRange::isOnlyKey() was testing the upper/lower pointers to +determine if this was a "trivial" range, which can be used to fast-path lookups. This +is insufficient in multi-process ports where range values may be thrown across the wire. +This is addressed by using the existing key equality tests. + +In addition, the bounds type check incorrectly checked m_lowerType == LowerBoundOpen, which +meant the function could never return true (since upper == lower implies closed bounds). +Therefore, the fast-path case wasn't used even in single-process ports (e.g. DRT). The +slow-path case contructed a backing store cursor over the range, and exited early if the +cursor yielded nothing. The fast-path case doesn't need to create a cursor, so needs to +deal with lookup misses. This revealed two similar (but trivial) lurking bugs in the +fast-path. + +No new behavior; covered by tests such as: storage/indexeddb/get-keyrange.html + +* Modules/indexeddb/IDBBackingStore.cpp: +(WebCore::IDBBackingStore::getRecord): Handle backing store read miss case. +* Modules/indexeddb/IDBDatabaseBackendImpl.cpp: +(WebCore::GetOperation::perform): Handle backing store read miss case. +* Modules/indexeddb/IDBKeyRange.cpp: +(WebCore::IDBKeyRange::isOnlyKey): Compare keys by value, not pointer, correct +type checks, add assertions. +* Modules/indexeddb/IDBKeyRange.h: +(IDBKeyRange): Move implementation to CPP file. + 2013-01-30 Joe Mason [BlackBerry] Never store empty credentials in NetworkJob::storeCredentials Modified: trunk/Source/WebCore/Modules/indexeddb/IDBBackingStore.cpp (141337 => 141338) --- trunk/Source/WebCore/Modules/indexeddb/IDBBackingStore.cpp 2013-01-31 00:05:31 UTC (rev 141337) +++ trunk/Source/WebCore/Modules/indexeddb/IDBBackingStore.cpp 2013-01-31 00:25:37 UTC (rev 141338) @@ -790,6 +790,8 @@ INTERNAL_READ_ERROR(GetRecord); return false; } +if (!found) +return true; int64_t version; const char* p = decodeVarInt(data.begin(), data.end(), version); Modified: trunk/Source/WebCore/Modules/indexeddb/IDBDatabaseBackendImpl.cpp (141337 => 141338) --- trunk/Source/WebCore/Modules/indexeddb/IDBDatabaseBackendImpl.cpp 2013-01-31 00:05:31 UTC (rev 141337) +++ trunk/Source/WebCore/Modules/indexeddb/IDBDatabaseBackendImpl.cpp 2013-01-31 00:25:37 UTC (rev 141338) @@ -755,6 +755,10 @@ m_callbacks->onErr
[webkit-changes] [141169] branches/chromium/1364/Source
Title: [141169] branches/chromium/1364/Source Revision 141169 Author jsb...@chromium.org Date 2013-01-29 15:00:10 -0800 (Tue, 29 Jan 2013) Log Message Merge 140483 > Prevent race condition during Worker shutdown > https://bugs.webkit.org/show_bug.cgi?id=107577 > > Reviewed by Dmitry Titov. > > Source/WebCore: > > During worker shutdown, from the main thread a cleanup task is posted followed by > terminating the message queue, which prevents further tasks from being processed. It was > possible for another task be posted by another thread between the main thread calls > to postTask and terminate(), which would cause that task to run after cleanup. Expose > a new WTF::MessageQueue::appendAndKill() method which keeps a mutex around the two steps, > and use that during worker shutdown. > > No reliable tests for the race - problem identified by inspection of user crash stacks. > > * workers/WorkerRunLoop.cpp: > (WebCore::WorkerRunLoop::postTaskAndTerminate): New method, uses MessageQueue::appendAndKill() > * workers/WorkerRunLoop.h: > * workers/WorkerThread.cpp: > (WebCore::WorkerThread::stop): Uses postTaskAndTerminate() to avoid race. > > Source/WTF: > > Add MessageQueue::appendAndKill() which wraps those two steps with a mutex so other > threads can't sneak a message in between. > > * wtf/MessageQueue.h: Added appendAndKill() method. > TBR=jsb...@chromium.org Review URL: https://codereview.chromium.org/12096050 Modified Paths branches/chromium/1364/Source/WTF/wtf/MessageQueue.h branches/chromium/1364/Source/WebCore/workers/WorkerRunLoop.cpp branches/chromium/1364/Source/WebCore/workers/WorkerRunLoop.h branches/chromium/1364/Source/WebCore/workers/WorkerThread.cpp Diff Modified: branches/chromium/1364/Source/WTF/wtf/MessageQueue.h (141168 => 141169) --- branches/chromium/1364/Source/WTF/wtf/MessageQueue.h 2013-01-29 22:52:58 UTC (rev 141168) +++ branches/chromium/1364/Source/WTF/wtf/MessageQueue.h 2013-01-29 23:00:10 UTC (rev 141169) @@ -55,6 +55,7 @@ ~MessageQueue(); void append(PassOwnPtr); +void appendAndKill(PassOwnPtr); bool appendAndCheckEmpty(PassOwnPtr); void prepend(PassOwnPtr); @@ -98,6 +99,15 @@ m_condition.signal(); } +template +inline void MessageQueue::appendAndKill(PassOwnPtr message) +{ +MutexLocker lock(m_mutex); +m_queue.append(message.leakPtr()); +m_killed = true; +m_condition.broadcast(); +} + // Returns true if the queue was empty before the item was added. template inline bool MessageQueue::appendAndCheckEmpty(PassOwnPtr message) Modified: branches/chromium/1364/Source/WebCore/workers/WorkerRunLoop.cpp (141168 => 141169) --- branches/chromium/1364/Source/WebCore/workers/WorkerRunLoop.cpp 2013-01-29 22:52:58 UTC (rev 141168) +++ branches/chromium/1364/Source/WebCore/workers/WorkerRunLoop.cpp 2013-01-29 23:00:10 UTC (rev 141169) @@ -201,6 +201,11 @@ postTaskForMode(task, defaultMode()); } +void WorkerRunLoop::postTaskAndTerminate(PassOwnPtr task) +{ +m_messageQueue.appendAndKill(Task::create(task, defaultMode().isolatedCopy())); +} + void WorkerRunLoop::postTaskForMode(PassOwnPtr task, const String& mode) { m_messageQueue.append(Task::create(task, mode.isolatedCopy())); Modified: branches/chromium/1364/Source/WebCore/workers/WorkerRunLoop.h (141168 => 141169) --- branches/chromium/1364/Source/WebCore/workers/WorkerRunLoop.h 2013-01-29 22:52:58 UTC (rev 141168) +++ branches/chromium/1364/Source/WebCore/workers/WorkerRunLoop.h 2013-01-29 23:00:10 UTC (rev 141169) @@ -61,6 +61,7 @@ bool terminated() const { return m_messageQueue.killed(); } void postTask(PassOwnPtr); +void postTaskAndTerminate(PassOwnPtr); void postTaskForMode(PassOwnPtr, const String& mode); unsigned long createUniqueId() { return ++m_uniqueId; } Modified: branches/chromium/1364/Source/WebCore/workers/WorkerThread.cpp (141168 => 141169) --- branches/chromium/1364/Source/WebCore/workers/WorkerThread.cpp 2013-01-29 22:52:58 UTC (rev 141168) +++ branches/chromium/1364/Source/WebCore/workers/WorkerThread.cpp 2013-01-29 23:00:10 UTC (rev 141169) @@ -267,7 +267,8 @@ #if ENABLE(SQL_DATABASE) DatabaseManager::manager().interruptAllDatabasesForContext(m_workerContext.get()); #endif -m_runLoop.postTask(WorkerThreadShutdownStartTask::create()); +m_runLoop.postTaskAndTerminate(WorkerThreadShutdownStartTask::create()); +return; } m_runLoop.terminate(); } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [141128] trunk/Source
Title: [141128] trunk/Source Revision 141128 Author jsb...@chromium.org Date 2013-01-29 09:58:07 -0800 (Tue, 29 Jan 2013) Log Message [Chromium] IndexedDB: Let callers specify reason (error) for aborting transaction https://bugs.webkit.org/show_bug.cgi?id=107851 Reviewed by Tony Chang. Source/WebCore: Internal to the back-end, callers are able to abort transactions and specify a reason as an IDBDatabaseError, e.g. ConstraintError. Expose this to the WebKit/chromium/public API so that intermediate layers can specify reasons as well, e.g. QuotaExceededError. Test will land in Chromium as fix for crbug.com/113118 * Modules/indexeddb/IDBDatabaseBackendImpl.cpp: (WebCore::IDBDatabaseBackendImpl::abort): Added overload that takes error. * Modules/indexeddb/IDBDatabaseBackendImpl.h: Ditto. * Modules/indexeddb/IDBDatabaseBackendInterface.h: Ditto. Source/WebKit/chromium: Let Chromium call abort() on a transaction and specify a reason, specifically for QuotaExceededError. * public/WebIDBDatabase.h: (WebKit::WebIDBDatabase::abort): New overload for abort() that takes an error. * public/WebIDBDatabaseError.h: (WebKit::WebIDBDatabaseError::WebIDBDatabaseError): Overloaded constructor/assign that takes error. * src/IDBDatabaseBackendProxy.cpp: (WebKit::IDBDatabaseBackendProxy::abort): New overload for abort() that takes an error. * src/IDBDatabaseBackendProxy.h: (IDBDatabaseBackendProxy): Ditto. * src/WebIDBDatabaseError.cpp: Implementation of overload ctor/assign. * src/WebIDBDatabaseImpl.cpp: (WebKit::WebIDBDatabaseImpl::abort): New overload for abort() that takes an error. * src/WebIDBDatabaseImpl.h: Ditto. * tests/IDBDatabaseBackendTest.cpp: Overload stubs for Mock class. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/IDBDatabaseBackendImpl.cpp trunk/Source/WebCore/Modules/indexeddb/IDBDatabaseBackendImpl.h trunk/Source/WebCore/Modules/indexeddb/IDBDatabaseBackendInterface.h trunk/Source/WebKit/chromium/ChangeLog trunk/Source/WebKit/chromium/public/WebIDBDatabase.h trunk/Source/WebKit/chromium/public/WebIDBDatabaseError.h trunk/Source/WebKit/chromium/src/IDBDatabaseBackendProxy.cpp trunk/Source/WebKit/chromium/src/IDBDatabaseBackendProxy.h trunk/Source/WebKit/chromium/src/WebIDBDatabaseError.cpp trunk/Source/WebKit/chromium/src/WebIDBDatabaseImpl.cpp trunk/Source/WebKit/chromium/src/WebIDBDatabaseImpl.h trunk/Source/WebKit/chromium/tests/IDBDatabaseBackendTest.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (141127 => 141128) --- trunk/Source/WebCore/ChangeLog 2013-01-29 17:52:17 UTC (rev 141127) +++ trunk/Source/WebCore/ChangeLog 2013-01-29 17:58:07 UTC (rev 141128) @@ -1,3 +1,21 @@ +2013-01-29 Joshua Bell + +[Chromium] IndexedDB: Let callers specify reason (error) for aborting transaction +https://bugs.webkit.org/show_bug.cgi?id=107851 + +Reviewed by Tony Chang. + +Internal to the back-end, callers are able to abort transactions and specify a reason +as an IDBDatabaseError, e.g. ConstraintError. Expose this to the WebKit/chromium/public +API so that intermediate layers can specify reasons as well, e.g. QuotaExceededError. + +Test will land in Chromium as fix for crbug.com/113118 + +* Modules/indexeddb/IDBDatabaseBackendImpl.cpp: +(WebCore::IDBDatabaseBackendImpl::abort): Added overload that takes error. +* Modules/indexeddb/IDBDatabaseBackendImpl.h: Ditto. +* Modules/indexeddb/IDBDatabaseBackendInterface.h: Ditto. + 2013-01-29 Victor Carbune Heap-use-after-free in WebCore::RenderTextTrackCue::layout Modified: trunk/Source/WebCore/Modules/indexeddb/IDBDatabaseBackendImpl.cpp (141127 => 141128) --- trunk/Source/WebCore/Modules/indexeddb/IDBDatabaseBackendImpl.cpp 2013-01-29 17:52:17 UTC (rev 141127) +++ trunk/Source/WebCore/Modules/indexeddb/IDBDatabaseBackendImpl.cpp 2013-01-29 17:58:07 UTC (rev 141128) @@ -672,6 +672,13 @@ m_transactions.get(transactionId)->abort(); } +void IDBDatabaseBackendImpl::abort(int64_t transactionId, PassRefPtr error) +{ +// If the transaction is unknown, then it has already been aborted by the backend before this call so it is safe to ignore it. +if (m_transactions.contains(transactionId)) +m_transactions.get(transactionId)->abort(error); +} + void IDBDatabaseBackendImpl::get(int64_t transactionId, int64_t objectStoreId, int64_t indexId, PassRefPtr keyRange, bool keyOnly, PassRefPtr callbacks) { IDB_TRACE("IDBDatabaseBackendImpl::get"); Modified: trunk/Source/WebCore/Modules/indexeddb/IDBDatabaseBackendImpl.h (141127 => 141128) --- trunk/Source/WebCore/Modules/indexeddb/IDBDatabaseBackendImpl.h 2013-01-29 17:52:17 UTC (rev 141127) +++ trunk/Source/WebCore/Modules/indexeddb/IDBDatabaseBackendImpl.h 2013-01-29 17:58:07 UTC (rev 141128) @@ -72,6 +72,7 @@ virtual void commit(int64_t transactionId); virtual void abort(int64_t transactionId); +virtual void abort(int64
[webkit-changes] [141014] trunk/LayoutTests
Title: [141014] trunk/LayoutTests Revision 141014 Author jsb...@chromium.org Date 2013-01-28 15:05:09 -0800 (Mon, 28 Jan 2013) Log Message [Chromium] Unreviewed gardening, removing Crash expectations from storage/indexeddb tests. https://bugs.webkit.org/show_bug.cgi?id=108048 Unreviewed. * platform/chromium/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/chromium/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (141013 => 141014) --- trunk/LayoutTests/ChangeLog 2013-01-28 22:47:38 UTC (rev 141013) +++ trunk/LayoutTests/ChangeLog 2013-01-28 23:05:09 UTC (rev 141014) @@ -1,3 +1,12 @@ +2013-01-28 Joshua Bell + +[Chromium] Unreviewed gardening, removing Crash expectations from storage/indexeddb tests. +https://bugs.webkit.org/show_bug.cgi?id=108048 + +Unreviewed. + +* platform/chromium/TestExpectations: + 2013-01-28 Sheriff Bot Unreviewed, rolling out r140934, r140935, and r140937. Modified: trunk/LayoutTests/platform/chromium/TestExpectations (141013 => 141014) --- trunk/LayoutTests/platform/chromium/TestExpectations 2013-01-28 22:47:38 UTC (rev 141013) +++ trunk/LayoutTests/platform/chromium/TestExpectations 2013-01-28 23:05:09 UTC (rev 141014) @@ -4328,15 +4328,6 @@ webkit.org/b/107567 editing/selection/extend-by-sentence-001.html [ Failure ] webkit.org/b/107567 svg/carto.net/combobox.svg [ Pass Failure ] -webkit.org/b/108048 [ Debug ] storage/indexeddb/cursor-advance-workers.html [ Crash ] -webkit.org/b/108048 [ Debug ] storage/indexeddb/deletedatabase-delayed-by-open-and-versionchange-workers.html [ Crash ] -webkit.org/b/108048 [ Debug ] storage/indexeddb/factory-basics-workers.html [ Crash ] -webkit.org/b/108048 [ Debug ] storage/indexeddb/index-basics-workers.html [ Crash ] -webkit.org/b/108048 [ Debug ] storage/indexeddb/objectstore-basics-workers.html [ Crash ] -webkit.org/b/108048 [ Debug ] storage/indexeddb/open-twice-workers.html [ Crash ] -webkit.org/b/108048 [ Debug ] storage/indexeddb/pending-activity-workers.html [ Crash ] -webkit.org/b/108048 [ Debug ] storage/indexeddb/transaction-complete-workers.html [ Crash ] - webkit.org/b/107899 fast/repaint/selection-clear.html [ ImageOnlyFailure ] webkit.org/b/107893 [ MountainLion ] fast/exclusions/shape-inside/shape-inside-first-fit-001.html [ ImageOnlyFailure ] ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [140735] trunk/Tools
Title: [140735] trunk/Tools Revision 140735 Author jsb...@chromium.org Date 2013-01-24 15:22:41 -0800 (Thu, 24 Jan 2013) Log Message Add watchlist for IndexedDB development, and add myself and others. Unreviewed. * Scripts/webkitpy/common/config/watchlist: Modified Paths trunk/Tools/ChangeLog trunk/Tools/Scripts/webkitpy/common/config/watchlist Diff Modified: trunk/Tools/ChangeLog (140734 => 140735) --- trunk/Tools/ChangeLog 2013-01-24 23:21:17 UTC (rev 140734) +++ trunk/Tools/ChangeLog 2013-01-24 23:22:41 UTC (rev 140735) @@ -1,3 +1,11 @@ +2013-01-24 Joshua Bell + +Add watchlist for IndexedDB development, and add myself and others. + +Unreviewed. + +* Scripts/webkitpy/common/config/watchlist: + 2013-01-24 Martin Robinson Abstract the logic for appending a UChar32 onto StringBuilder Modified: trunk/Tools/Scripts/webkitpy/common/config/watchlist (140734 => 140735) --- trunk/Tools/Scripts/webkitpy/common/config/watchlist 2013-01-24 23:21:17 UTC (rev 140734) +++ trunk/Tools/Scripts/webkitpy/common/config/watchlist 2013-01-24 23:22:41 UTC (rev 140735) @@ -357,6 +357,15 @@ "RegionsUsage": { "more": r"(RenderRegion|RenderFlowThread|RenderNamedFlowThread)(?!\.(h|cpp))", }, +"IndexedDB": { +"filename": r"Source/WebCore/Modules/indexeddb" +r"|Source/WebCore/bindings/.*IDB.*\.(h|cpp)" +r"|Source/WebCore/bindings/.*SerializedScriptValue.*\.(h|cpp)" +r"|Source/WebKit/chromium/.*IDB.*\.(h|cpp)" +r"|Source/WebCore/platform/leveldb" +r"|LayoutTests/storage/indexeddb" +r"|LayoutTests/platform/.*/storage/indexeddb", +}, }, "CC_RULES": { # Note: All email addresses listed must be registered with bugzilla. @@ -394,6 +403,7 @@ "GtkWebKit2PublicAPI": [ "cgar...@igalia.com", "g...@gnome.org", "mrobin...@webkit.org" ], "Harfbuzz": [ "dominik.rottsc...@intel.com" ], "HTML": [ "ojan.aut...@gmail.com" ], +"IndexedDB": [ "alecfl...@chromium.org", "dgro...@chromium.org", "jsb...@chromium.org" ], "Loader": [ "jap...@chromium.org" ], "MathML": [ "dbar...@mathscribe.com" ], "Media": [ "feature-media-revi...@chromium.org", "eric.carl...@apple.com" ], ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [140483] trunk/Source
Title: [140483] trunk/Source Revision 140483 Author jsb...@chromium.org Date 2013-01-22 15:45:45 -0800 (Tue, 22 Jan 2013) Log Message Prevent race condition during Worker shutdown https://bugs.webkit.org/show_bug.cgi?id=107577 Reviewed by Dmitry Titov. Source/WebCore: During worker shutdown, from the main thread a cleanup task is posted followed by terminating the message queue, which prevents further tasks from being processed. It was possible for another task be posted by another thread between the main thread calls to postTask and terminate(), which would cause that task to run after cleanup. Expose a new WTF::MessageQueue::appendAndKill() method which keeps a mutex around the two steps, and use that during worker shutdown. No reliable tests for the race - problem identified by inspection of user crash stacks. * workers/WorkerRunLoop.cpp: (WebCore::WorkerRunLoop::postTaskAndTerminate): New method, uses MessageQueue::appendAndKill() * workers/WorkerRunLoop.h: * workers/WorkerThread.cpp: (WebCore::WorkerThread::stop): Uses postTaskAndTerminate() to avoid race. Source/WTF: Add MessageQueue::appendAndKill() which wraps those two steps with a mutex so other threads can't sneak a message in between. * wtf/MessageQueue.h: Added appendAndKill() method. Modified Paths trunk/Source/WTF/ChangeLog trunk/Source/WTF/wtf/MessageQueue.h trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/workers/WorkerRunLoop.cpp trunk/Source/WebCore/workers/WorkerRunLoop.h trunk/Source/WebCore/workers/WorkerThread.cpp Diff Modified: trunk/Source/WTF/ChangeLog (140482 => 140483) --- trunk/Source/WTF/ChangeLog 2013-01-22 23:44:27 UTC (rev 140482) +++ trunk/Source/WTF/ChangeLog 2013-01-22 23:45:45 UTC (rev 140483) @@ -1,3 +1,15 @@ +2013-01-22 Joshua Bell + +Prevent race condition during Worker shutdown +https://bugs.webkit.org/show_bug.cgi?id=107577 + +Reviewed by Dmitry Titov. + +Add MessageQueue::appendAndKill() which wraps those two steps with a mutex so other +threads can't sneak a message in between. + +* wtf/MessageQueue.h: Added appendAndKill() method. + 2013-01-22 Roger Fong WTF project files and property sheets for getting WebKit to compile in VS2010. Modified: trunk/Source/WTF/wtf/MessageQueue.h (140482 => 140483) --- trunk/Source/WTF/wtf/MessageQueue.h 2013-01-22 23:44:27 UTC (rev 140482) +++ trunk/Source/WTF/wtf/MessageQueue.h 2013-01-22 23:45:45 UTC (rev 140483) @@ -55,6 +55,7 @@ ~MessageQueue(); void append(PassOwnPtr); +void appendAndKill(PassOwnPtr); bool appendAndCheckEmpty(PassOwnPtr); void prepend(PassOwnPtr); @@ -98,6 +99,15 @@ m_condition.signal(); } +template +inline void MessageQueue::appendAndKill(PassOwnPtr message) +{ +MutexLocker lock(m_mutex); +m_queue.append(message.leakPtr()); +m_killed = true; +m_condition.broadcast(); +} + // Returns true if the queue was empty before the item was added. template inline bool MessageQueue::appendAndCheckEmpty(PassOwnPtr message) Modified: trunk/Source/WebCore/ChangeLog (140482 => 140483) --- trunk/Source/WebCore/ChangeLog 2013-01-22 23:44:27 UTC (rev 140482) +++ trunk/Source/WebCore/ChangeLog 2013-01-22 23:45:45 UTC (rev 140483) @@ -1,3 +1,25 @@ +2013-01-22 Joshua Bell + +Prevent race condition during Worker shutdown +https://bugs.webkit.org/show_bug.cgi?id=107577 + +Reviewed by Dmitry Titov. + +During worker shutdown, from the main thread a cleanup task is posted followed by +terminating the message queue, which prevents further tasks from being processed. It was +possible for another task be posted by another thread between the main thread calls +to postTask and terminate(), which would cause that task to run after cleanup. Expose +a new WTF::MessageQueue::appendAndKill() method which keeps a mutex around the two steps, +and use that during worker shutdown. + +No reliable tests for the race - problem identified by inspection of user crash stacks. + +* workers/WorkerRunLoop.cpp: +(WebCore::WorkerRunLoop::postTaskAndTerminate): New method, uses MessageQueue::appendAndKill() +* workers/WorkerRunLoop.h: +* workers/WorkerThread.cpp: +(WebCore::WorkerThread::stop): Uses postTaskAndTerminate() to avoid race. + 2013-01-22 Tony Chang Unreviewed, rolling out r140171. Modified: trunk/Source/WebCore/workers/WorkerRunLoop.cpp (140482 => 140483) --- trunk/Source/WebCore/workers/WorkerRunLoop.cpp 2013-01-22 23:44:27 UTC (rev 140482) +++ trunk/Source/WebCore/workers/WorkerRunLoop.cpp 2013-01-22 23:45:45 UTC (rev 140483) @@ -201,6 +201,11 @@ postTaskForMode(task, defaultMode()); } +void WorkerRunLoop::postTaskAndTerminate(PassOwnPtr task) +{ +m_messageQueue.appendAndKill(Task::create(task, defaultMode().isolatedCopy()
[webkit-changes] [140027] trunk/Source/WebCore
Title: [140027] trunk/Source/WebCore Revision 140027 Author jsb...@chromium.org Date 2013-01-17 12:37:54 -0800 (Thu, 17 Jan 2013) Log Message IndexedDB: Prevent crash dereferencing null if script context has stopped https://bugs.webkit.org/show_bug.cgi?id=107146 Reviewed by Tony Chang. We have crash reports from Chromium users (but no local repro) for a crash coming from IDBRequest::dispatchEvent() that looks like it's calling toV8Context() after the script execution context has stopped. The dispatch shouldn't be occurring and we ASSERT as such, but something weird is going on during Worker tear down. If this patch prevents the crash it would indicate that stop() is called before dispatchEvent() which shouldn't be happening, and would let us continue chasing the issue. No new tests - this shouldn't be happening. * Modules/indexeddb/IDBRequest.cpp: (WebCore::IDBRequest::dispatchEvent): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/IDBRequest.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (140026 => 140027) --- trunk/Source/WebCore/ChangeLog 2013-01-17 20:37:14 UTC (rev 140026) +++ trunk/Source/WebCore/ChangeLog 2013-01-17 20:37:54 UTC (rev 140027) @@ -1,3 +1,23 @@ +2013-01-17 Joshua Bell + +IndexedDB: Prevent crash dereferencing null if script context has stopped +https://bugs.webkit.org/show_bug.cgi?id=107146 + +Reviewed by Tony Chang. + +We have crash reports from Chromium users (but no local repro) for a crash coming +from IDBRequest::dispatchEvent() that looks like it's calling toV8Context() after +the script execution context has stopped. The dispatch shouldn't be occurring +and we ASSERT as such, but something weird is going on during Worker tear down. +If this patch prevents the crash it would indicate that stop() is called before +dispatchEvent() which shouldn't be happening, and would let us continue chasing +the issue. + +No new tests - this shouldn't be happening. + +* Modules/indexeddb/IDBRequest.cpp: +(WebCore::IDBRequest::dispatchEvent): + 2013-01-17 Robert Hogan Nested fixed position element not staying with parent Modified: trunk/Source/WebCore/Modules/indexeddb/IDBRequest.cpp (140026 => 140027) --- trunk/Source/WebCore/Modules/indexeddb/IDBRequest.cpp 2013-01-17 20:37:14 UTC (rev 140026) +++ trunk/Source/WebCore/Modules/indexeddb/IDBRequest.cpp 2013-01-17 20:37:54 UTC (rev 140027) @@ -440,6 +440,13 @@ ASSERT(event->target() == this); ASSERT_WITH_MESSAGE(m_readyState < DONE, "When dispatching event %s, m_readyState < DONE(%d), was %d", event->type().string().utf8().data(), DONE, m_readyState); +// FIXME: This method should not be called if stop() was previously called, +// but there are crash reports (no local repro) indicating a null pointer +// deference in the following DOMRequestState::Scope constructor. If this +// resolves the crashes, track down the root cause, otherwise back this out. +if (m_contextStopped) +return false; + DOMRequestState::Scope scope(m_requestState); if (event->type() != eventNames().blockedEvent) ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [139987] trunk/Source/WebCore
Title: [139987] trunk/Source/WebCore Revision 139987 Author jsb...@chromium.org Date 2013-01-17 10:28:20 -0800 (Thu, 17 Jan 2013) Log Message Unreviewed, rolling out r139929. http://trac.webkit.org/changeset/139929 https://bugs.webkit.org/show_bug.cgi?id=107141 Speculative fix didn't work (Requested by jsbell on #webkit). Patch by Sheriff Bot on 2013-01-17 * Modules/indexeddb/IDBObjectStore.cpp: (WebCore::IDBObjectStore::createIndex): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/IDBObjectStore.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (139986 => 139987) --- trunk/Source/WebCore/ChangeLog 2013-01-17 18:22:45 UTC (rev 139986) +++ trunk/Source/WebCore/ChangeLog 2013-01-17 18:28:20 UTC (rev 139987) @@ -1,3 +1,14 @@ +2013-01-17 Sheriff Bot + +Unreviewed, rolling out r139929. +http://trac.webkit.org/changeset/139929 +https://bugs.webkit.org/show_bug.cgi?id=107141 + +Speculative fix didn't work (Requested by jsbell on #webkit). + +* Modules/indexeddb/IDBObjectStore.cpp: +(WebCore::IDBObjectStore::createIndex): + 2013-01-16 Alexey Proskuryakov Don't use NSApplication run loop in NetworkProcess Modified: trunk/Source/WebCore/Modules/indexeddb/IDBObjectStore.cpp (139986 => 139987) --- trunk/Source/WebCore/Modules/indexeddb/IDBObjectStore.cpp 2013-01-17 18:22:45 UTC (rev 139986) +++ trunk/Source/WebCore/Modules/indexeddb/IDBObjectStore.cpp 2013-01-17 18:28:20 UTC (rev 139987) @@ -356,12 +356,6 @@ PassRefPtr IDBObjectStore::createIndex(ScriptExecutionContext* context, const String& name, const IDBKeyPath& keyPath, bool unique, bool multiEntry, ExceptionCode& ec) { IDB_TRACE("IDBObjectStore::createIndex"); -// FIXME: Temporary code to determine if null contexts are plausible during frame destruction. -// https://bugs.webkit.org/show_bug.cgi?id=107050 -ASSERT(context); -if (!context) -return 0; - if (!m_transaction->isVersionChange() || m_deleted) { ec = IDBDatabaseException::InvalidStateError; return 0; ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [139929] trunk/Source/WebCore
Title: [139929] trunk/Source/WebCore Revision 139929 Author jsb...@chromium.org Date 2013-01-16 15:11:07 -0800 (Wed, 16 Jan 2013) Log Message IndexedDB: Possible null ScriptExecutionContext passed to callbacks during frame destruction https://bugs.webkit.org/show_bug.cgi?id=107050 Reviewed by Tony Chang. Temporary code to defend against null contexts. Will either refute a hypothesis, or we'll need to make a more systemic fix elsewhere. Either way it will be removed in a few days. We're unable to repro, but watching crash reports from users. One possible source is that during page tear-down WorkerScriptController::controllerForContext() returns null (there's a comment about that case) leading to a null context. No new tests - this shouldn't be happening. * Modules/indexeddb/IDBObjectStore.cpp: (WebCore::IDBObjectStore::createIndex): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/IDBObjectStore.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (139928 => 139929) --- trunk/Source/WebCore/ChangeLog 2013-01-16 23:08:53 UTC (rev 139928) +++ trunk/Source/WebCore/ChangeLog 2013-01-16 23:11:07 UTC (rev 139929) @@ -1,3 +1,21 @@ +2013-01-16 Joshua Bell + +IndexedDB: Possible null ScriptExecutionContext passed to callbacks during frame destruction +https://bugs.webkit.org/show_bug.cgi?id=107050 + +Reviewed by Tony Chang. + +Temporary code to defend against null contexts. Will either refute a hypothesis, or we'll +need to make a more systemic fix elsewhere. Either way it will be removed in a few days. +We're unable to repro, but watching crash reports from users. One possible source is +that during page tear-down WorkerScriptController::controllerForContext() returns null +(there's a comment about that case) leading to a null context. + +No new tests - this shouldn't be happening. + +* Modules/indexeddb/IDBObjectStore.cpp: +(WebCore::IDBObjectStore::createIndex): + 2013-01-16 Kenneth Russell Simplify validation and data copying in WebGLBuffer Modified: trunk/Source/WebCore/Modules/indexeddb/IDBObjectStore.cpp (139928 => 139929) --- trunk/Source/WebCore/Modules/indexeddb/IDBObjectStore.cpp 2013-01-16 23:08:53 UTC (rev 139928) +++ trunk/Source/WebCore/Modules/indexeddb/IDBObjectStore.cpp 2013-01-16 23:11:07 UTC (rev 139929) @@ -356,6 +356,12 @@ PassRefPtr IDBObjectStore::createIndex(ScriptExecutionContext* context, const String& name, const IDBKeyPath& keyPath, bool unique, bool multiEntry, ExceptionCode& ec) { IDB_TRACE("IDBObjectStore::createIndex"); +// FIXME: Temporary code to determine if null contexts are plausible during frame destruction. +// https://bugs.webkit.org/show_bug.cgi?id=107050 +ASSERT(context); +if (!context) +return 0; + if (!m_transaction->isVersionChange() || m_deleted) { ec = IDBDatabaseException::InvalidStateError; return 0; ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [139793] trunk/LayoutTests
Title: [139793] trunk/LayoutTests Revision 139793 Author jsb...@chromium.org Date 2013-01-15 14:27:58 -0800 (Tue, 15 Jan 2013) Log Message IndexedDB: Fix tests which depend upon V8 event listener behavior https://bugs.webkit.org/show_bug.cgi?id=106731 Ensure consistent use of callback(evt) { preamble(evt); ... } pattern, which addresses running in JSC and in V8 under Workers. Also add worker test wrappers. Reviewed by Tony Chang. * storage/indexeddb/cursor-advance-expected.txt: * storage/indexeddb/cursor-advance-workers-expected.txt: Added. * storage/indexeddb/cursor-advance-workers.html: Added. * storage/indexeddb/deletedatabase-delayed-by-open-and-versionchange-expected.txt: * storage/indexeddb/deletedatabase-delayed-by-open-and-versionchange-workers-expected.txt: Added. * storage/indexeddb/deletedatabase-delayed-by-open-and-versionchange-workers.html: Added. * storage/indexeddb/resources/cursor-advance.js: (prepareDatabase): (testPrefetchInRange.prefetch): (testPrefetchInRange): (testPrefetchOutOfRange.prefetch): (testPrefetchOutOfRange): (testBadAdvance.advanceBadly): (testBadAdvance): (testEdges.request.onsuccess): (testEdges): (testDelete.deleteSecond): (testDelete): * storage/indexeddb/resources/deletedatabase-delayed-by-open-and-versionchange.js: (onOpenSuccess): Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/storage/indexeddb/cursor-advance-expected.txt trunk/LayoutTests/storage/indexeddb/deletedatabase-delayed-by-open-and-versionchange-expected.txt trunk/LayoutTests/storage/indexeddb/resources/cursor-advance.js trunk/LayoutTests/storage/indexeddb/resources/deletedatabase-delayed-by-open-and-versionchange.js Added Paths trunk/LayoutTests/storage/indexeddb/cursor-advance-workers-expected.txt trunk/LayoutTests/storage/indexeddb/cursor-advance-workers.html trunk/LayoutTests/storage/indexeddb/deletedatabase-delayed-by-open-and-versionchange-workers-expected.txt trunk/LayoutTests/storage/indexeddb/deletedatabase-delayed-by-open-and-versionchange-workers.html Diff Modified: trunk/LayoutTests/ChangeLog (139792 => 139793) --- trunk/LayoutTests/ChangeLog 2013-01-15 22:21:43 UTC (rev 139792) +++ trunk/LayoutTests/ChangeLog 2013-01-15 22:27:58 UTC (rev 139793) @@ -1,3 +1,34 @@ +2013-01-15 Joshua Bell + +IndexedDB: Fix tests which depend upon V8 event listener behavior +https://bugs.webkit.org/show_bug.cgi?id=106731 + +Ensure consistent use of callback(evt) { preamble(evt); ... } pattern, which addresses +running in JSC and in V8 under Workers. Also add worker test wrappers. + +Reviewed by Tony Chang. + +* storage/indexeddb/cursor-advance-expected.txt: +* storage/indexeddb/cursor-advance-workers-expected.txt: Added. +* storage/indexeddb/cursor-advance-workers.html: Added. +* storage/indexeddb/deletedatabase-delayed-by-open-and-versionchange-expected.txt: +* storage/indexeddb/deletedatabase-delayed-by-open-and-versionchange-workers-expected.txt: Added. +* storage/indexeddb/deletedatabase-delayed-by-open-and-versionchange-workers.html: Added. +* storage/indexeddb/resources/cursor-advance.js: +(prepareDatabase): +(testPrefetchInRange.prefetch): +(testPrefetchInRange): +(testPrefetchOutOfRange.prefetch): +(testPrefetchOutOfRange): +(testBadAdvance.advanceBadly): +(testBadAdvance): +(testEdges.request.onsuccess): +(testEdges): +(testDelete.deleteSecond): +(testDelete): +* storage/indexeddb/resources/deletedatabase-delayed-by-open-and-versionchange.js: +(onOpenSuccess): + 2013-01-15 Elliott Sprehn HTML parser should queue MutationRecords for its operations Modified: trunk/LayoutTests/storage/indexeddb/cursor-advance-expected.txt (139792 => 139793) --- trunk/LayoutTests/storage/indexeddb/cursor-advance-expected.txt 2013-01-15 22:21:43 UTC (rev 139792) +++ trunk/LayoutTests/storage/indexeddb/cursor-advance-expected.txt 2013-01-15 22:27:58 UTC (rev 139793) @@ -8,6 +8,8 @@ dbname = "cursor-advance.html" indexedDB.deleteDatabase(dbname) indexedDB.open(dbname) + +prepareDatabase(): objectStore = db.createObjectStore(objectStoreName); Now create the indexes. objectStore.createIndex(indexData[i].name, indexData[i].keyPath, indexData[i].options); @@ -84,52 +86,96 @@ trans = db.transaction(objectStoreName) objectStore = trans.objectStore(objectStoreName) request = objectStore.openCursor() + +prefetch(): PASS expected is "{\"key\":\"237-23-7732\",\"value\":{\"name\":\"Bob\",\"height\":60,\"weight\":120},\"primaryKey\":\"237-23-7732\"}" cursor.continue() + +prefetch(): PASS expected is "{\"key\":\"237-23-7733\",\"value\":{\"name\":\"Ann\",\"height\":52,\"weight\":110},\"primaryKey\":\"237-23-7733\"}" cursor.continue() + +prefetch(): PASS expected is "{\"key\":\"237-23-7734\",\"value\":{\"name\":\"Ron\",\"height\":73,\"weight\":180},\"primaryKey\":\"237-23-773
[webkit-changes] [139747] trunk/Tools
Title: [139747] trunk/Tools Revision 139747 Author jsb...@chromium.org Date 2013-01-15 09:24:04 -0800 (Tue, 15 Jan 2013) Log Message Unreviewed. Adding Michael Pruett as contributor. * Scripts/webkitpy/common/config/committers.py: Modified Paths trunk/Tools/ChangeLog trunk/Tools/Scripts/webkitpy/common/config/committers.py Diff Modified: trunk/Tools/ChangeLog (139746 => 139747) --- trunk/Tools/ChangeLog 2013-01-15 17:13:07 UTC (rev 139746) +++ trunk/Tools/ChangeLog 2013-01-15 17:24:04 UTC (rev 139747) @@ -1,3 +1,9 @@ +2013-01-15 Joshua Bell + +Unreviewed. Adding Michael Pruett as contributor. + +* Scripts/webkitpy/common/config/committers.py: + 2013-01-15 Victor Carbune Unreviewed. Update my email addresses. Modified: trunk/Tools/Scripts/webkitpy/common/config/committers.py (139746 => 139747) --- trunk/Tools/Scripts/webkitpy/common/config/committers.py 2013-01-15 17:13:07 UTC (rev 139746) +++ trunk/Tools/Scripts/webkitpy/common/config/committers.py 2013-01-15 17:24:04 UTC (rev 139747) @@ -151,6 +151,7 @@ Contributor("Kulanthaivel Palanichamy", "kulanthai...@codeaurora.org", "kvel"), Contributor("Kiran Muppala", "cmupp...@apple.com", "kiranm"), Contributor("Koji Ishii", "kojii...@gmail.com"), +Contributor("Michael Pruett", "mich...@68k.org", "mpruett"), Contributor("Mihai Balan", "miba...@adobe.com", "miChou"), Contributor("Mihai Maerean", "mmaer...@adobe.com", "mmaerean"), Contributor("Min Qin", "qin...@chromium.org"), ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [139641] trunk/Source/WebCore
Title: [139641] trunk/Source/WebCore Revision 139641 Author jsb...@chromium.org Date 2013-01-14 12:25:26 -0800 (Mon, 14 Jan 2013) Log Message Bindings: Remove special cases for DOMString[] https://bugs.webkit.org/show_bug.cgi?id=106506 Remove special in binding code generators that map DOMString[] to DOMStringList. Array (T[]) and sequence (sequence) are supported enough now that to be used for Internals, which is the only IDL that needed updating. Reviewed by Adam Barth. Tests: fast/forms/file/selected-files-from-history-state.html fast/forms/state-restore-broken-state.html fast/forms/state-restore-skip-stateless.html Bindings test results updated for JS/V8. * bindings/scripts/CodeGenerator.pm: Remove redundant IsArrayType (use GetArrayType instead) (IsRefPtrType): Array and Sequence types are not RefPtr types. * bindings/scripts/CodeGeneratorJS.pm: (IndexGetterReturnsStrings): Remove special case for DOMString[]. (AddIncludesForType): Skip Array types, just like Sequence types. (Should probably recurse for the base type, but not needed for now.) (GenerateParametersCheckExpression): s/IsArrayType/GetArrayType/ (GetNativeType): Remove special case for DOMString[]. (GetNativeTypeForCallbacks): Ditto. (JSValueToNative): Ditto. * bindings/scripts/CodeGeneratorV8.pm: (GenerateParametersCheckExpression): s/IsArrayType/GetArrayType/ (GetNativeType): Remove special case for DOMString[]. (JSValueToNative): Ditto. (GetV8HeaderName): Ditto. (IsWrapperType): * bindings/scripts/test/JS/JSTestObj.cpp: (WebCore): (WebCore::jsTestObjPrototypeFunctionOverloadedMethod7): (WebCore::jsTestObjPrototypeFunctionOverloadedMethod9): (WebCore::jsTestObjPrototypeFunctionStringArrayFunction): (WebCore::jsTestObjPrototypeFunctionDomStringListFunction): * bindings/scripts/test/JS/JSTestObj.h: (WebCore): * bindings/scripts/test/TestObj.idl: Added explicit new cases for DOMStringList * bindings/scripts/test/V8/V8TestObj.cpp: (WebCore::TestObjV8Internal::overloadedMethod7Callback): (WebCore::TestObjV8Internal::overloadedMethod9Callback): (WebCore::TestObjV8Internal::stringArrayFunctionCallback): (TestObjV8Internal): (WebCore::TestObjV8Internal::domStringListFunctionCallback): (WebCore): (WebCore::ConfigureV8TestObjTemplate): * testing/Internals.cpp: (WebCore::Internals::formControlStateOfPreviousHistoryItem): (WebCore::Internals::setFormControlStateOfPreviousHistoryItem): (WebCore::Internals::iconURLs): (WebCore::Internals::getReferencedFilePaths): * testing/Internals.h: (Internals): * testing/Internals.idl: Produce DOMString[], consume sequence to match tests. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/bindings/scripts/CodeGenerator.pm trunk/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm trunk/Source/WebCore/bindings/scripts/CodeGeneratorV8.pm trunk/Source/WebCore/bindings/scripts/test/JS/JSTestObj.cpp trunk/Source/WebCore/bindings/scripts/test/JS/JSTestObj.h trunk/Source/WebCore/bindings/scripts/test/TestObj.idl trunk/Source/WebCore/bindings/scripts/test/V8/V8TestObj.cpp trunk/Source/WebCore/testing/Internals.cpp trunk/Source/WebCore/testing/Internals.h trunk/Source/WebCore/testing/Internals.idl Diff Modified: trunk/Source/WebCore/ChangeLog (139640 => 139641) --- trunk/Source/WebCore/ChangeLog 2013-01-14 20:23:02 UTC (rev 139640) +++ trunk/Source/WebCore/ChangeLog 2013-01-14 20:25:26 UTC (rev 139641) @@ -1,3 +1,62 @@ +2013-01-14 Joshua Bell + +Bindings: Remove special cases for DOMString[] +https://bugs.webkit.org/show_bug.cgi?id=106506 + +Remove special in binding code generators that map DOMString[] to DOMStringList. +Array (T[]) and sequence (sequence) are supported enough now that to be used +for Internals, which is the only IDL that needed updating. + +Reviewed by Adam Barth. + +Tests: fast/forms/file/selected-files-from-history-state.html + fast/forms/state-restore-broken-state.html + fast/forms/state-restore-skip-stateless.html + +Bindings test results updated for JS/V8. + +* bindings/scripts/CodeGenerator.pm: Remove redundant IsArrayType (use GetArrayType instead) +(IsRefPtrType): Array and Sequence types are not RefPtr types. +* bindings/scripts/CodeGeneratorJS.pm: +(IndexGetterReturnsStrings): Remove special case for DOMString[]. +(AddIncludesForType): Skip Array types, just like Sequence types. (Should probably recurse +for the base type, but not needed for now.) +(GenerateParametersCheckExpression): s/IsArrayType/GetArrayType/ +(GetNativeType): Remove special case for DOMString[]. +(GetNativeTypeForCallbacks): Ditto. +(JSValueToNative): Ditto. +* bindings/scripts/CodeGeneratorV8.pm: +(GenerateParametersCheckExpression): s/IsArrayType/GetArrayType/ +(GetNativeType): Remove special case for DOMString[]. +(JSValueToNative): Ditto. +(GetV8HeaderName): D
[webkit-changes] [139518] trunk/Source/WebCore
Title: [139518] trunk/Source/WebCore Revision 139518 Author jsb...@chromium.org Date 2013-01-11 16:12:55 -0800 (Fri, 11 Jan 2013) Log Message IndexedDB: IDBTransaction should manage lifetime of IDBRequests https://bugs.webkit.org/show_bug.cgi?id=106678 Reviewed by Tony Chang. Ensure reference count of IDBRequests don't bounce off zero if there are no script references are while the events are arriving. No new tests - no detectable behavior changes. * Modules/indexeddb/IDBRequest.cpp: (WebCore::IDBRequest::create): Register with transaction (which now takes a ref) here to... (WebCore::IDBRequest::IDBRequest): ...avoid having to relax adoption requirements here. * Modules/indexeddb/IDBTransaction.cpp: Keep RefPtr<>s to outstanding requests. (WebCore::IDBTransaction::~IDBTransaction): (WebCore::IDBTransaction::abort): (WebCore::IDBTransaction::onAbort): * Modules/indexeddb/IDBTransaction.h: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/IDBRequest.cpp trunk/Source/WebCore/Modules/indexeddb/IDBTransaction.cpp trunk/Source/WebCore/Modules/indexeddb/IDBTransaction.h Diff Modified: trunk/Source/WebCore/ChangeLog (139517 => 139518) --- trunk/Source/WebCore/ChangeLog 2013-01-12 00:10:59 UTC (rev 139517) +++ trunk/Source/WebCore/ChangeLog 2013-01-12 00:12:55 UTC (rev 139518) @@ -1,3 +1,24 @@ +2013-01-11 Joshua Bell + +IndexedDB: IDBTransaction should manage lifetime of IDBRequests +https://bugs.webkit.org/show_bug.cgi?id=106678 + +Reviewed by Tony Chang. + +Ensure reference count of IDBRequests don't bounce off zero if there are no script +references are while the events are arriving. + +No new tests - no detectable behavior changes. + +* Modules/indexeddb/IDBRequest.cpp: +(WebCore::IDBRequest::create): Register with transaction (which now takes a ref) here to... +(WebCore::IDBRequest::IDBRequest): ...avoid having to relax adoption requirements here. +* Modules/indexeddb/IDBTransaction.cpp: Keep RefPtr<>s to outstanding requests. +(WebCore::IDBTransaction::~IDBTransaction): +(WebCore::IDBTransaction::abort): +(WebCore::IDBTransaction::onAbort): +* Modules/indexeddb/IDBTransaction.h: + 2013-01-11 James Simonsen [Resource Timing] XMLHttpRequests should have initiator type 'xmlhttprequest' Modified: trunk/Source/WebCore/Modules/indexeddb/IDBRequest.cpp (139517 => 139518) --- trunk/Source/WebCore/Modules/indexeddb/IDBRequest.cpp 2013-01-12 00:10:59 UTC (rev 139517) +++ trunk/Source/WebCore/Modules/indexeddb/IDBRequest.cpp 2013-01-12 00:12:55 UTC (rev 139518) @@ -49,6 +49,9 @@ { RefPtr request(adoptRef(new IDBRequest(context, source, IDBTransactionBackendInterface::NormalTask, transaction))); request->suspendIfNeeded(); +// Requests associated with IDBFactory (open/deleteDatabase/getDatabaseNames) are not associated with transactions. +if (transaction) +transaction->registerRequest(request.get()); return request.release(); } @@ -56,6 +59,9 @@ { RefPtr request(adoptRef(new IDBRequest(context, source, taskType, transaction))); request->suspendIfNeeded(); +// Requests associated with IDBFactory (open/deleteDatabase/getDatabaseNames) are not associated with transactions. +if (transaction) +transaction->registerRequest(request.get()); return request.release(); } @@ -78,10 +84,6 @@ , m_preventPropagation(false) , m_requestState(context) { -// Requests associated with IDBFactory (open/deleteDatabase/getDatabaseNames) are not -// associated with transactions. -if (m_transaction) -m_transaction->registerRequest(this); } IDBRequest::~IDBRequest() Modified: trunk/Source/WebCore/Modules/indexeddb/IDBTransaction.cpp (139517 => 139518) --- trunk/Source/WebCore/Modules/indexeddb/IDBTransaction.cpp 2013-01-12 00:10:59 UTC (rev 139517) +++ trunk/Source/WebCore/Modules/indexeddb/IDBTransaction.cpp 2013-01-12 00:12:55 UTC (rev 139518) @@ -120,6 +120,7 @@ IDBTransaction::~IDBTransaction() { ASSERT(m_state == Finished); +ASSERT(m_requestList.isEmpty()); } const String& IDBTransaction::mode() const @@ -223,7 +224,7 @@ m_state = Finishing; while (!m_requestList.isEmpty()) { -IDBRequest* request = *m_requestList.begin(); +RefPtr request = *m_requestList.begin(); m_requestList.remove(request); request->abort(); } @@ -300,7 +301,7 @@ // Abort was not triggered by front-end, so outstanding requests must // be aborted now. while (!m_requestList.isEmpty()) { -IDBRequest* request = *m_requestList.begin(); +RefPtr request = *m_requestList.begin(); m_requestList.remove(request); request->abort(); } Modified: trunk/Source/WebCore/Modules/indexeddb/IDBTransaction.h (139517 => 139518) --- trunk/Source/WebCor
[webkit-changes] [138864] trunk/Source/WebCore
Title: [138864] trunk/Source/WebCore Revision 138864 Author jsb...@chromium.org Date 2013-01-04 15:57:44 -0800 (Fri, 04 Jan 2013) Log Message Unreviewed, fix Apple Win build following http://trac.webkit.org/changeset/138838 https://bugs.webkit.org/show_bug.cgi?id=105927 * WebCore.vcproj/WebCoreTestSupport.vcproj: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/WebCore.vcproj/WebCoreTestSupport.vcproj Diff Modified: trunk/Source/WebCore/ChangeLog (138863 => 138864) --- trunk/Source/WebCore/ChangeLog 2013-01-04 23:47:58 UTC (rev 138863) +++ trunk/Source/WebCore/ChangeLog 2013-01-04 23:57:44 UTC (rev 138864) @@ -1,3 +1,10 @@ +2013-01-04 Joshua Bell + +Unreviewed, fix Apple Win build following http://trac.webkit.org/changeset/138838 +https://bugs.webkit.org/show_bug.cgi?id=105927 + +* WebCore.vcproj/WebCoreTestSupport.vcproj: + 2013-01-04 Abhishek Arya Heap-use-after-free in WebCore::XMLDocumentParser::doEnd Modified: trunk/Source/WebCore/WebCore.vcproj/WebCoreTestSupport.vcproj (138863 => 138864) --- trunk/Source/WebCore/WebCore.vcproj/WebCoreTestSupport.vcproj 2013-01-04 23:47:58 UTC (rev 138863) +++ trunk/Source/WebCore/WebCore.vcproj/WebCoreTestSupport.vcproj 2013-01-04 23:57:44 UTC (rev 138864) @@ -484,6 +484,74 @@ > +RelativePath="$(ConfigurationBuildDir)\obj\WebCore\DerivedSources\JSTypeConversions.cpp" +> + + + + + + + + + + + + + + + + + + + + + + RelativePath="$(ConfigurationBuildDir)\obj\WebCore\DerivedSources\JSInternals.cpp" > ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [138836] trunk
Title: [138836] trunk Revision 138836 Author jsb...@chromium.org Date 2013-01-04 12:42:37 -0800 (Fri, 04 Jan 2013) Log Message Add tests for WebIDL type conversions https://bugs.webkit.org/show_bug.cgi?id=105927 Reviewed by Adam Barth. Source/WebCore: Expose attributes of various WebIDL types for testing ECMAScript value conversion, including edge cases such as NaNs, Infinities, etc. These attributes hang off a TypeConversions object created via window.internals.typeConversions(). Test: fast/js/webidl-type-mapping.html * CMakeLists.txt: * DerivedSources.make: * DerivedSources.pri: * GNUmakefile.list.am: * Target.pri: * WebCore.gyp/WebCore.gyp: * WebCore.gypi: * WebCore.vcproj/WebCoreTestSupport.vcproj: * WebCore.xcodeproj/project.pbxproj: * testing/Internals.cpp: (WebCore::Internals::typeConversions): (WebCore): * testing/Internals.h: (WebCore): * testing/Internals.idl: * testing/TypeConversions.h: Added. (WebCore): (TypeConversions): (WebCore::TypeConversions::create): (WebCore::TypeConversions::testLong): (WebCore::TypeConversions::setTestLong): (WebCore::TypeConversions::testUnsignedLong): (WebCore::TypeConversions::setTestUnsignedLong): (WebCore::TypeConversions::testLongLong): (WebCore::TypeConversions::setTestLongLong): (WebCore::TypeConversions::testUnsignedLongLong): (WebCore::TypeConversions::setTestUnsignedLongLong): (WebCore::TypeConversions::TypeConversions): * testing/TypeConversions.idl: Added. LayoutTests: This currently fails long long conversions of non-finites (which should map to 0). Patch in progress at: http://wkbug.com/96798 * fast/js/webidl-type-mapping-expected.txt: Added. * fast/js/webidl-type-mapping.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/CMakeLists.txt trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/DerivedSources.make trunk/Source/WebCore/DerivedSources.pri trunk/Source/WebCore/GNUmakefile.list.am trunk/Source/WebCore/Target.pri trunk/Source/WebCore/WebCore.gyp/WebCore.gyp trunk/Source/WebCore/WebCore.gypi trunk/Source/WebCore/WebCore.vcproj/WebCoreTestSupport.vcproj trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj trunk/Source/WebCore/testing/Internals.cpp trunk/Source/WebCore/testing/Internals.h trunk/Source/WebCore/testing/Internals.idl Added Paths trunk/LayoutTests/fast/js/webidl-type-mapping-expected.txt trunk/LayoutTests/fast/js/webidl-type-mapping.html trunk/Source/WebCore/testing/TypeConversions.h trunk/Source/WebCore/testing/TypeConversions.idl Diff Modified: trunk/LayoutTests/ChangeLog (138835 => 138836) --- trunk/LayoutTests/ChangeLog 2013-01-04 20:40:25 UTC (rev 138835) +++ trunk/LayoutTests/ChangeLog 2013-01-04 20:42:37 UTC (rev 138836) @@ -1,3 +1,16 @@ +2013-01-04 Joshua Bell + +Add tests for WebIDL type conversions +https://bugs.webkit.org/show_bug.cgi?id=105927 + +Reviewed by Adam Barth. + +This currently fails long long conversions of non-finites (which should map to 0). Patch +in progress at: http://wkbug.com/96798 + +* fast/js/webidl-type-mapping-expected.txt: Added. +* fast/js/webidl-type-mapping.html: Added. + 2013-01-04 Stephen White Invalidation of some SVG filter attributes on HTML content doesn't work Added: trunk/LayoutTests/fast/js/webidl-type-mapping-expected.txt (0 => 138836) --- trunk/LayoutTests/fast/js/webidl-type-mapping-expected.txt (rev 0) +++ trunk/LayoutTests/fast/js/webidl-type-mapping-expected.txt 2013-01-04 20:42:37 UTC (rev 138836) @@ -0,0 +1,279 @@ +Exercise WebIDL type conversions. + +On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". + + +converter = window.internals.typeConversions() + +PASS 'testLong' in converter is true +PASS typeof converter.testLong === 'number' is true +converter.testLong = 0 +PASS converter.testLong is 0 +converter.testLong = -1 +PASS converter.testLong is -1 +converter.testLong = 1 +PASS converter.testLong is 1 +converter.testLong = 0x7F +PASS converter.testLong is 0x7F +converter.testLong = 0x80 +PASS converter.testLong is 0x80 +converter.testLong = 0xFF +PASS converter.testLong is 0xFF +converter.testLong = -0x80 +PASS converter.testLong is -0x80 +converter.testLong = -0x81 +PASS converter.testLong is -0x81 +converter.testLong = 0x7FFF +PASS converter.testLong is 0x7FFF +converter.testLong = 0x8000 +PASS converter.testLong is 0x8000 +converter.testLong = 0x +PASS converter.testLong is 0x +converter.testLong = -0x8000 +PASS converter.testLong is -0x8000 +converter.testLong = -0x8001 +PASS converter.testLong is -0x8001 +converter.testLong = 0x7FFF +PASS converter.testLong is 0x7FFF +converter.testLong = 0x8000 +PASS converter.testLong is -0x8000 +converter.testLong = 0x +PASS converter.testLong is -1 +converter.testLong = -0x8000 +PASS converter.testLong is -0x8000 +converter.testLong = -0x8001 +PASS converter.testLong is 0x7FFF +converter.testLong = 0xDCB
[webkit-changes] [138716] trunk/Source
Title: [138716] trunk/Source Revision 138716 Author jsb...@chromium.org Date 2013-01-03 10:23:56 -0800 (Thu, 03 Jan 2013) Log Message IndexedDB: Simplify IDBTransactionBackendImpl::scheduleTask usage https://bugs.webkit.org/show_bug.cgi?id=103536 Reviewed by Tony Chang. Source/WebCore: Move responsibility for firing abort errors from requests that arrive on the back-end after an asynchronous transaction abort out of WebCore, since the front-end takes care of this as far as script is concerned. No new tests - no behavior changes. * Modules/indexeddb/IDBCursorBackendImpl.cpp: (WebCore::IDBCursorBackendImpl::continueFunction): (WebCore::IDBCursorBackendImpl::advance): (WebCore::IDBCursorBackendImpl::prefetchContinue): * Modules/indexeddb/IDBIndexBackendImpl.cpp: (WebCore::IDBIndexBackendImpl::openCursor): (WebCore::IDBIndexBackendImpl::openKeyCursor): (WebCore::IDBIndexBackendImpl::count): (WebCore::IDBIndexBackendImpl::get): (WebCore::IDBIndexBackendImpl::getKey): * Modules/indexeddb/IDBObjectStoreBackendImpl.cpp: (WebCore::IDBObjectStoreBackendImpl::get): (WebCore::IDBObjectStoreBackendImpl::put): (WebCore::IDBObjectStoreBackendImpl::deleteFunction): (WebCore::IDBObjectStoreBackendImpl::clear): (WebCore::IDBObjectStoreBackendImpl::openCursor): (WebCore::IDBObjectStoreBackendImpl::count): Source/WebKit/chromium: Track whether IDBCallbacks has fired before being destructed. If not it probably came in after a transaction had asynchronously aborted; fire an abort error which will be ignored on the front-end but will clean up lingering IPC tracking. * public/WebIDBDatabaseException.h: * src/AssertMatchingEnums.cpp: * src/IDBCallbacksProxy.cpp: (WebKit::IDBCallbacksProxy::IDBCallbacksProxy): (WebKit::IDBCallbacksProxy::~IDBCallbacksProxy): (WebKit::IDBCallbacksProxy::onError): (WebKit::IDBCallbacksProxy::onSuccess): * src/IDBCallbacksProxy.h: (IDBCallbacksProxy): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/IDBCursorBackendImpl.cpp trunk/Source/WebCore/Modules/indexeddb/IDBIndexBackendImpl.cpp trunk/Source/WebCore/Modules/indexeddb/IDBObjectStoreBackendImpl.cpp trunk/Source/WebKit/chromium/ChangeLog trunk/Source/WebKit/chromium/public/WebIDBDatabaseException.h trunk/Source/WebKit/chromium/src/AssertMatchingEnums.cpp trunk/Source/WebKit/chromium/src/IDBCallbacksProxy.cpp trunk/Source/WebKit/chromium/src/IDBCallbacksProxy.h Diff Modified: trunk/Source/WebCore/ChangeLog (138715 => 138716) --- trunk/Source/WebCore/ChangeLog 2013-01-03 18:17:21 UTC (rev 138715) +++ trunk/Source/WebCore/ChangeLog 2013-01-03 18:23:56 UTC (rev 138716) @@ -1,3 +1,34 @@ +2013-01-03 Joshua Bell + +IndexedDB: Simplify IDBTransactionBackendImpl::scheduleTask usage +https://bugs.webkit.org/show_bug.cgi?id=103536 + +Reviewed by Tony Chang. + +Move responsibility for firing abort errors from requests that arrive on the +back-end after an asynchronous transaction abort out of WebCore, since the +front-end takes care of this as far as script is concerned. + +No new tests - no behavior changes. + +* Modules/indexeddb/IDBCursorBackendImpl.cpp: +(WebCore::IDBCursorBackendImpl::continueFunction): +(WebCore::IDBCursorBackendImpl::advance): +(WebCore::IDBCursorBackendImpl::prefetchContinue): +* Modules/indexeddb/IDBIndexBackendImpl.cpp: +(WebCore::IDBIndexBackendImpl::openCursor): +(WebCore::IDBIndexBackendImpl::openKeyCursor): +(WebCore::IDBIndexBackendImpl::count): +(WebCore::IDBIndexBackendImpl::get): +(WebCore::IDBIndexBackendImpl::getKey): +* Modules/indexeddb/IDBObjectStoreBackendImpl.cpp: +(WebCore::IDBObjectStoreBackendImpl::get): +(WebCore::IDBObjectStoreBackendImpl::put): +(WebCore::IDBObjectStoreBackendImpl::deleteFunction): +(WebCore::IDBObjectStoreBackendImpl::clear): +(WebCore::IDBObjectStoreBackendImpl::openCursor): +(WebCore::IDBObjectStoreBackendImpl::count): + 2013-01-03 Tiancheng Jiang Update BB10 media render theme. Modified: trunk/Source/WebCore/Modules/indexeddb/IDBCursorBackendImpl.cpp (138715 => 138716) --- trunk/Source/WebCore/Modules/indexeddb/IDBCursorBackendImpl.cpp 2013-01-03 18:17:21 UTC (rev 138715) +++ trunk/Source/WebCore/Modules/indexeddb/IDBCursorBackendImpl.cpp 2013-01-03 18:23:56 UTC (rev 138716) @@ -127,17 +127,14 @@ { IDB_TRACE("IDBCursorBackendImpl::continue"); RefPtr callbacks = prpCallbacks; -if (!m_transaction->scheduleTask(m_taskType, CursorIterationOperation::create(this, key, callbacks))) -callbacks->onError(IDBDatabaseError::create(IDBDatabaseException::AbortError)); +m_transaction->scheduleTask(m_taskType, CursorIterationOperation::create(this, key, callbacks)); } void IDBCursorBackendImpl::advance(unsigned long count, PassRefPtr prpCallbacks, ExceptionCode&) { IDB_TRACE("IDBCursorBackendImpl::
[webkit-changes] [138402] trunk/LayoutTests
Title: [138402] trunk/LayoutTests Revision 138402 Author jsb...@chromium.org Date 2012-12-21 15:48:36 -0800 (Fri, 21 Dec 2012) Log Message [Chromium] IndexedDB: storage/indexeddb/intversion-close-between-events.html flaky in content_shell https://bugs.webkit.org/show_bug.cgi?id=105665 Test uses a setTimeout() which may fire at different times relative to the completion of the IDBOpenDBRequest in multiprocess ports. Make the test resilient against different outcomes. Reviewed by Tony Chang. * storage/indexeddb/resources/intversion-close-between-events.js: (deleteSuccess): (openSuccessOrError): (checkFinished): Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/storage/indexeddb/resources/intversion-close-between-events.js Diff Modified: trunk/LayoutTests/ChangeLog (138401 => 138402) --- trunk/LayoutTests/ChangeLog 2012-12-21 23:27:49 UTC (rev 138401) +++ trunk/LayoutTests/ChangeLog 2012-12-21 23:48:36 UTC (rev 138402) @@ -1,5 +1,20 @@ 2012-12-21 Joshua Bell +[Chromium] IndexedDB: storage/indexeddb/intversion-close-between-events.html flaky in content_shell +https://bugs.webkit.org/show_bug.cgi?id=105665 + +Test uses a setTimeout() which may fire at different times relative to the completion of the +IDBOpenDBRequest in multiprocess ports. Make the test resilient against different outcomes. + +Reviewed by Tony Chang. + +* storage/indexeddb/resources/intversion-close-between-events.js: +(deleteSuccess): +(openSuccessOrError): +(checkFinished): + +2012-12-21 Joshua Bell + IndexedDB: Combine openConnection and openConnectionWithVersion https://bugs.webkit.org/show_bug.cgi?id=105658 Modified: trunk/LayoutTests/storage/indexeddb/resources/intversion-close-between-events.js (138401 => 138402) --- trunk/LayoutTests/storage/indexeddb/resources/intversion-close-between-events.js 2012-12-21 23:27:49 UTC (rev 138401) +++ trunk/LayoutTests/storage/indexeddb/resources/intversion-close-between-events.js 2012-12-21 23:48:36 UTC (rev 138402) @@ -19,10 +19,9 @@ preamble(evt); evalAndLog("request = indexedDB.open(dbname, 7)"); -request._onsuccess_ = openSuccess; +request._onsuccess_ = request._onerror_ = openSuccessOrError; request._onupgradeneeded_ = upgradeNeeded; request._onblocked_ = unexpectedBlockedCallback; -request._onerror_ = unexpectedErrorCallback; } var sawTransactionComplete = false; @@ -50,7 +49,7 @@ } var didCallCloseDB = false; -var didGetOpenSuccess = false; +var didGetOpenSuccessOrError = false; function closeDB() { @@ -59,9 +58,11 @@ checkFinished(); } -function openSuccess(evt) +function openSuccessOrError(evt) { -didGetOpenSuccess = true; +// May get either a success or error event, depending on when the timeout fires +// relative to the open steps. +didGetOpenSuccessOrError = true; var quiet = true; if (didCallCloseDB) { @@ -77,7 +78,7 @@ { preamble(); -if (!didCallCloseDB || !didGetOpenSuccess) { +if (!didCallCloseDB || !didGetOpenSuccessOrError) { debug("Not done yet..."); return; } ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [138400] trunk
Title: [138400] trunk Revision 138400 Author jsb...@chromium.org Date 2012-12-21 15:26:24 -0800 (Fri, 21 Dec 2012) Log Message IndexedDB: Combine openConnection and openConnectionWithVersion https://bugs.webkit.org/show_bug.cgi?id=105658 Reviewed by Tony Chang. Source/WebCore: Combine the logic from these two methods. Mostly a refactor, but in the "pending calls" case the behavior is slightly altered since the version and no-version queues were previously separate, so the order changes. The new order matches the spec and FF/IE behavior, and a test is added to verify this. Chromium's webkit_unit_tests rely on a quirk to bypass the upgrade mechanism; the usage is slightly altered and made more explicit, and requires a small amount of test-only code. Test: storage/indexeddb/open-ordering.html * Modules/indexeddb/IDBDatabaseBackendImpl.cpp: (WebCore::IDBDatabaseBackendImpl::PendingOpenCall::create): (WebCore::IDBDatabaseBackendImpl::PendingOpenCall::PendingOpenCall): (WebCore::IDBDatabaseBackendImpl::VersionChangeOperation::perform): (WebCore::IDBDatabaseBackendImpl::transactionFinishedAndAbortFired): (WebCore::IDBDatabaseBackendImpl::processPendingCalls): (WebCore::IDBDatabaseBackendImpl::openConnection): (WebCore::IDBDatabaseBackendImpl::runIntVersionChangeTransaction): (WebCore::IDBDatabaseBackendImpl::close): * Modules/indexeddb/IDBDatabaseBackendImpl.h: (IDBDatabaseBackendImpl): * Modules/indexeddb/IDBFactoryBackendImpl.cpp: (WebCore::IDBFactoryBackendImpl::open): Source/WebKit/chromium: * tests/IDBDatabaseBackendTest.cpp: LayoutTests: * storage/indexeddb/open-ordering-expected.txt: Added. * storage/indexeddb/open-ordering.html: Added. * storage/indexeddb/resources/open-ordering.js: Added. (runTest): (onDeleteSuccess): (onRequest1Success): (onRequest2Success): (onRequest3Success): (checkOrder): Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/IDBDatabaseBackendImpl.cpp trunk/Source/WebCore/Modules/indexeddb/IDBDatabaseBackendImpl.h trunk/Source/WebCore/Modules/indexeddb/IDBFactoryBackendImpl.cpp trunk/Source/WebKit/chromium/ChangeLog trunk/Source/WebKit/chromium/tests/IDBDatabaseBackendTest.cpp Added Paths trunk/LayoutTests/storage/indexeddb/open-ordering-expected.txt trunk/LayoutTests/storage/indexeddb/open-ordering.html trunk/LayoutTests/storage/indexeddb/resources/open-ordering.js Diff Modified: trunk/LayoutTests/ChangeLog (138399 => 138400) --- trunk/LayoutTests/ChangeLog 2012-12-21 22:34:34 UTC (rev 138399) +++ trunk/LayoutTests/ChangeLog 2012-12-21 23:26:24 UTC (rev 138400) @@ -1,3 +1,20 @@ +2012-12-21 Joshua Bell + +IndexedDB: Combine openConnection and openConnectionWithVersion +https://bugs.webkit.org/show_bug.cgi?id=105658 + +Reviewed by Tony Chang. + +* storage/indexeddb/open-ordering-expected.txt: Added. +* storage/indexeddb/open-ordering.html: Added. +* storage/indexeddb/resources/open-ordering.js: Added. +(runTest): +(onDeleteSuccess): +(onRequest1Success): +(onRequest2Success): +(onRequest3Success): +(checkOrder): + 2012-12-21 Aaron Colwell Unreviewed. Removing CRASH expectations for media layout tests Added: trunk/LayoutTests/storage/indexeddb/open-ordering-expected.txt (0 => 138400) --- trunk/LayoutTests/storage/indexeddb/open-ordering-expected.txt (rev 0) +++ trunk/LayoutTests/storage/indexeddb/open-ordering-expected.txt 2012-12-21 23:26:24 UTC (rev 138400) @@ -0,0 +1,43 @@ +Test IndexedDB ordering of pending open calls. + +On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". + + +indexedDB = self.indexedDB || self.webkitIndexedDB || self.mozIndexedDB || self.msIndexedDB || self.OIndexedDB; + +dbname = "open-ordering.html" +indexedDB.deleteDatabase(dbname) +indexedDB.open(dbname, 2) + +runTest(): +connection = event.target.result + +First a delete request, which will defer subsequent opens. The delete itself will be blocked by the open connection. +deleteRequest = indexedDB.deleteDatabase(dbname) + +Now three open requests: +order = [] +request1 = indexedDB.open(dbname, 2) +request2 = indexedDB.open(dbname) +request3 = indexedDB.open(dbname, 2) + +Close the connection to unblock the delete +connection.close() + +onDeleteSuccess(): + +onRequest1Success(): +order.push(1) + +onRequest2Success(): +order.push(2) + +onRequest3Success(): +order.push(3) + +checkOrder(): +PASS JSON.stringify(order) is "[1,2,3]" +PASS successfullyParsed is true + +TEST COMPLETE + Added: trunk/LayoutTests/storage/indexeddb/open-ordering.html (0 => 138400) --- trunk/LayoutTests/storage/indexeddb/open-ordering.html (rev 0) +++ trunk/LayoutTests/storage/indexeddb/open-ordering.html 2012-12-21 23:26:24 UTC (rev 138400) @@ -0,0 +1,10 @@ + + +
[webkit-changes] [138268] trunk
Title: [138268] trunk Revision 138268 Author jsb...@chromium.org Date 2012-12-20 10:21:35 -0800 (Thu, 20 Dec 2012) Log Message IndexedDB: Layout test showing delete database getting two blocked events https://bugs.webkit.org/show_bug.cgi?id=92674 Reviewed by Tony Chang. Source/WebCore: Match the steps specified behavior for deleteDatabase() in the spec: versionchange/blocked events fire if necessary, then waits until a condition is satisfied before continuing with the steps to delete the database. The bug was caused by retrying the full call again. Events are also now sent out immediately when a "versionchange" transaction is running, rather than entering a limbo state - again, the new behavior matches the spec more accurately. Tests: storage/indexeddb/delete-in-upgradeneeded-close-in-open-success.html storage/indexeddb/delete-in-upgradeneeded-close-in-versionchange.html storage/indexeddb/deletedatabase-delayed-by-open-and-versionchange.html storage/indexeddb/intversion-gated-on-delete.html * Modules/indexeddb/IDBDatabaseBackendImpl.cpp: (WebCore::IDBDatabaseBackendImpl::processPendingCalls): (WebCore::IDBDatabaseBackendImpl::deleteDatabase): First half of the steps. (WebCore): (WebCore::IDBDatabaseBackendImpl::isDeleteDatabaseBlocked): Pull out condition test. (WebCore::IDBDatabaseBackendImpl::deleteDatabaseFinal): Second half of the of steps. * Modules/indexeddb/IDBDatabaseBackendImpl.h: (IDBDatabaseBackendImpl): LayoutTests: Update/add tests to match the expected behavior where blocked/versionchange events fire even when a "versionchange" transaction is running. * storage/indexeddb/delete-in-upgradeneeded-close-in-open-success-expected.txt: Copied from LayoutTests/storage/indexeddb/intversion-delete-in-upgradeneeded-expected.txt. * storage/indexeddb/delete-in-upgradeneeded-close-in-open-success.html: Copied from LayoutTests/storage/indexeddb/intversion-delete-in-upgradeneeded.html. * storage/indexeddb/delete-in-upgradeneeded-close-in-versionchange-expected.txt: Renamed from LayoutTests/storage/indexeddb/intversion-delete-in-upgradeneeded-expected.txt. * storage/indexeddb/delete-in-upgradeneeded-close-in-versionchange.html: Renamed from LayoutTests/storage/indexeddb/intversion-delete-in-upgradeneeded.html. * storage/indexeddb/deletedatabase-delayed-by-open-and-versionchange-expected.txt: * storage/indexeddb/deletedatabase-delayed-by-versionchange-expected.txt: * storage/indexeddb/intversion-gated-on-delete-expected.txt: * storage/indexeddb/resources/delete-in-upgradeneeded-close-in-open-success.js: Copied from LayoutTests/storage/indexeddb/resources/intversion-delete-in-upgradeneeded.js. * storage/indexeddb/resources/delete-in-upgradeneeded-close-in-versionchange.js: Renamed from LayoutTests/storage/indexeddb/resources/intversion-delete-in-upgradeneeded.js. * storage/indexeddb/resources/deletedatabase-delayed-by-open-and-versionchange.js: * storage/indexeddb/resources/factory-deletedatabase.js: * storage/indexeddb/resources/intversion-gated-on-delete.js: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/storage/indexeddb/deletedatabase-delayed-by-open-and-versionchange-expected.txt trunk/LayoutTests/storage/indexeddb/deletedatabase-delayed-by-versionchange-expected.txt trunk/LayoutTests/storage/indexeddb/intversion-gated-on-delete-expected.txt trunk/LayoutTests/storage/indexeddb/resources/deletedatabase-delayed-by-open-and-versionchange.js trunk/LayoutTests/storage/indexeddb/resources/factory-deletedatabase.js trunk/LayoutTests/storage/indexeddb/resources/intversion-gated-on-delete.js trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/IDBDatabaseBackendImpl.cpp trunk/Source/WebCore/Modules/indexeddb/IDBDatabaseBackendImpl.h Added Paths trunk/LayoutTests/storage/indexeddb/delete-in-upgradeneeded-close-in-open-success-expected.txt trunk/LayoutTests/storage/indexeddb/delete-in-upgradeneeded-close-in-open-success.html trunk/LayoutTests/storage/indexeddb/delete-in-upgradeneeded-close-in-versionchange-expected.txt trunk/LayoutTests/storage/indexeddb/delete-in-upgradeneeded-close-in-versionchange.html trunk/LayoutTests/storage/indexeddb/resources/delete-in-upgradeneeded-close-in-open-success.js trunk/LayoutTests/storage/indexeddb/resources/delete-in-upgradeneeded-close-in-versionchange.js Removed Paths trunk/LayoutTests/storage/indexeddb/intversion-delete-in-upgradeneeded-expected.txt trunk/LayoutTests/storage/indexeddb/intversion-delete-in-upgradeneeded.html trunk/LayoutTests/storage/indexeddb/resources/intversion-delete-in-upgradeneeded.js Diff Modified: trunk/LayoutTests/ChangeLog (138267 => 138268) --- trunk/LayoutTests/ChangeLog 2012-12-20 18:21:28 UTC (rev 138267) +++ trunk/LayoutTests/ChangeLog 2012-12-20 18:21:35 UTC (rev 138268) @@ -1,3 +1,26 @@ +2012-12-20 Joshua Bell + +IndexedDB: Layout test showing delete database getting two blocked events +https://bugs.webkit.org/show_bug.cgi?id=92674 + +
[webkit-changes] [137773] trunk/Source/WebKit/chromium
Title: [137773] trunk/Source/WebKit/chromium Revision 137773 Author jsb...@chromium.org Date 2012-12-14 14:31:53 -0800 (Fri, 14 Dec 2012) Log Message [Chromium] IndexedDB: Memory leak in IDBCallbacksProxy::onSuccess(PassRefPtr) https://bugs.webkit.org/show_bug.cgi?id=104615 Reviewed by Tony Chang. Don't create (and leak) a new wrapper object for onSuccess if one was created for onUpgradeNeeded. * src/IDBCallbacksProxy.cpp: (WebKit::IDBCallbacksProxy::IDBCallbacksProxy): (WebKit::IDBCallbacksProxy::onSuccess): (WebKit::IDBCallbacksProxy::onUpgradeNeeded): * src/IDBCallbacksProxy.h: (IDBCallbacksProxy): Modified Paths trunk/Source/WebKit/chromium/ChangeLog trunk/Source/WebKit/chromium/src/IDBCallbacksProxy.cpp trunk/Source/WebKit/chromium/src/IDBCallbacksProxy.h Diff Modified: trunk/Source/WebKit/chromium/ChangeLog (137772 => 137773) --- trunk/Source/WebKit/chromium/ChangeLog 2012-12-14 22:30:20 UTC (rev 137772) +++ trunk/Source/WebKit/chromium/ChangeLog 2012-12-14 22:31:53 UTC (rev 137773) @@ -1,3 +1,19 @@ +2012-12-14 Joshua Bell + +[Chromium] IndexedDB: Memory leak in IDBCallbacksProxy::onSuccess(PassRefPtr) +https://bugs.webkit.org/show_bug.cgi?id=104615 + +Reviewed by Tony Chang. + +Don't create (and leak) a new wrapper object for onSuccess if one was created for onUpgradeNeeded. + +* src/IDBCallbacksProxy.cpp: +(WebKit::IDBCallbacksProxy::IDBCallbacksProxy): +(WebKit::IDBCallbacksProxy::onSuccess): +(WebKit::IDBCallbacksProxy::onUpgradeNeeded): +* src/IDBCallbacksProxy.h: +(IDBCallbacksProxy): + 2012-12-14 Yusuf Ozuysal Send a message from WebViewImpl to the compositor to inform about end of flings Modified: trunk/Source/WebKit/chromium/src/IDBCallbacksProxy.cpp (137772 => 137773) --- trunk/Source/WebKit/chromium/src/IDBCallbacksProxy.cpp 2012-12-14 22:30:20 UTC (rev 137772) +++ trunk/Source/WebKit/chromium/src/IDBCallbacksProxy.cpp 2012-12-14 22:31:53 UTC (rev 137773) @@ -59,6 +59,7 @@ IDBCallbacksProxy::IDBCallbacksProxy(PassOwnPtr callbacks) : m_callbacks(callbacks) +, m_didCreateProxy(false) { } @@ -79,7 +80,8 @@ void IDBCallbacksProxy::onSuccess(PassRefPtr backend) { ASSERT(m_databaseCallbacks.get()); -m_callbacks->onSuccess(new WebIDBDatabaseImpl(backend, m_databaseCallbacks.release())); +WebIDBDatabaseImpl* impl = m_didCreateProxy ? 0 : new WebIDBDatabaseImpl(backend, m_databaseCallbacks.release()); +m_callbacks->onSuccess(impl); } void IDBCallbacksProxy::onSuccess(PassRefPtr idbKey) @@ -147,6 +149,7 @@ void IDBCallbacksProxy::onUpgradeNeeded(int64_t oldVersion, PassRefPtr transaction, PassRefPtr database) { ASSERT(m_databaseCallbacks); +m_didCreateProxy = true; m_callbacks->onUpgradeNeeded(oldVersion, new WebIDBTransactionImpl(transaction), new WebIDBDatabaseImpl(database, m_databaseCallbacks)); } Modified: trunk/Source/WebKit/chromium/src/IDBCallbacksProxy.h (137772 => 137773) --- trunk/Source/WebKit/chromium/src/IDBCallbacksProxy.h 2012-12-14 22:30:20 UTC (rev 137772) +++ trunk/Source/WebKit/chromium/src/IDBCallbacksProxy.h 2012-12-14 22:31:53 UTC (rev 137773) @@ -68,6 +68,7 @@ OwnPtr m_callbacks; RefPtr m_databaseCallbacks; +bool m_didCreateProxy; }; } // namespace WebKit ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [137330] trunk/Source/WebKit/chromium
Title: [137330] trunk/Source/WebKit/chromium Revision 137330 Author jsb...@chromium.org Date 2012-12-11 10:13:17 -0800 (Tue, 11 Dec 2012) Log Message [Chromium] IndexedDB: Memory leak in IDBCallbacksProxy::onSuccess(PassRefPtr) https://bugs.webkit.org/show_bug.cgi?id=104615 Reviewed by Tony Chang. Ensure passed pointer is treated with ownership semantics. * src/WebIDBCallbacksImpl.cpp: (WebKit::WebIDBCallbacksImpl::onSuccess): Modified Paths trunk/Source/WebKit/chromium/ChangeLog trunk/Source/WebKit/chromium/src/WebIDBCallbacksImpl.cpp Diff Modified: trunk/Source/WebKit/chromium/ChangeLog (137329 => 137330) --- trunk/Source/WebKit/chromium/ChangeLog 2012-12-11 17:58:03 UTC (rev 137329) +++ trunk/Source/WebKit/chromium/ChangeLog 2012-12-11 18:13:17 UTC (rev 137330) @@ -1,3 +1,15 @@ +2012-12-11 Joshua Bell + +[Chromium] IndexedDB: Memory leak in IDBCallbacksProxy::onSuccess(PassRefPtr) +https://bugs.webkit.org/show_bug.cgi?id=104615 + +Reviewed by Tony Chang. + +Ensure passed pointer is treated with ownership semantics. + +* src/WebIDBCallbacksImpl.cpp: +(WebKit::WebIDBCallbacksImpl::onSuccess): + 2012-12-11 Mark Pilgrim [Chromium] Clean up unused interfaces in PlatformSupport Modified: trunk/Source/WebKit/chromium/src/WebIDBCallbacksImpl.cpp (137329 => 137330) --- trunk/Source/WebKit/chromium/src/WebIDBCallbacksImpl.cpp 2012-12-11 17:58:03 UTC (rev 137329) +++ trunk/Source/WebKit/chromium/src/WebIDBCallbacksImpl.cpp 2012-12-11 18:13:17 UTC (rev 137330) @@ -73,11 +73,12 @@ void WebIDBCallbacksImpl::onSuccess(WebIDBDatabase* webKitInstance) { +OwnPtr webDatabase = adoptPtr(webKitInstance); if (m_databaseProxy) { m_callbacks->onSuccess(m_databaseProxy.release()); return; } -m_callbacks->onSuccess(IDBDatabaseBackendProxy::create(adoptPtr(webKitInstance))); +m_callbacks->onSuccess(IDBDatabaseBackendProxy::create(webDatabase.release())); } void WebIDBCallbacksImpl::onSuccess(const WebIDBKey& key) ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [136958] trunk/Source/WebCore
Title: [136958] trunk/Source/WebCore Revision 136958 Author jsb...@chromium.org Date 2012-12-07 09:52:36 -0800 (Fri, 07 Dec 2012) Log Message IndexedDB: Check SSV version when opening database https://bugs.webkit.org/show_bug.cgi?id=102243 Reviewed by Tony Chang. Ensure that the data format (SerializedScriptValue) isn't "from the future" when opening a backing store. Treat an unknown version the same as an unknown schema version. Chromium-side test at https://codereview.chromium.org/11470013/ (same as other schema version tests) * Modules/indexeddb/IDBBackingStore.cpp: (WebCore): (WebCore::isSchemaKnown): Check data version as well. (WebCore::setUpMetadata): Ensure data version is recorded; bump schema version. * Modules/indexeddb/IDBLevelDBCoding.cpp: Encoding for "DataVersion" global metadata entry. (IDBLevelDBCoding): (WebCore::IDBLevelDBCoding::compare): (WebCore::IDBLevelDBCoding::DataVersionKey::encode): * Modules/indexeddb/IDBLevelDBCoding.h: (DataVersionKey): (IDBLevelDBCoding): * bindings/js/SerializedScriptValue.cpp: (SerializedScriptValue::wireFormatVersion): New method (JSC side). * bindings/js/SerializedScriptValue.h: * bindings/v8/SerializedScriptValue.cpp: (WebCore::SerializedScriptValue::wireFormatVersion): New method (V8 side). (WebCore): * bindings/v8/SerializedScriptValue.h: (SerializedScriptValue): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/IDBBackingStore.cpp trunk/Source/WebCore/Modules/indexeddb/IDBLevelDBCoding.cpp trunk/Source/WebCore/Modules/indexeddb/IDBLevelDBCoding.h trunk/Source/WebCore/bindings/js/SerializedScriptValue.cpp trunk/Source/WebCore/bindings/js/SerializedScriptValue.h trunk/Source/WebCore/bindings/v8/SerializedScriptValue.cpp trunk/Source/WebCore/bindings/v8/SerializedScriptValue.h Diff Modified: trunk/Source/WebCore/ChangeLog (136957 => 136958) --- trunk/Source/WebCore/ChangeLog 2012-12-07 16:54:31 UTC (rev 136957) +++ trunk/Source/WebCore/ChangeLog 2012-12-07 17:52:36 UTC (rev 136958) @@ -1,3 +1,35 @@ +2012-12-07 Joshua Bell + +IndexedDB: Check SSV version when opening database +https://bugs.webkit.org/show_bug.cgi?id=102243 + +Reviewed by Tony Chang. + +Ensure that the data format (SerializedScriptValue) isn't "from the future" when opening +a backing store. Treat an unknown version the same as an unknown schema version. + +Chromium-side test at https://codereview.chromium.org/11470013/ (same as other schema version tests) + +* Modules/indexeddb/IDBBackingStore.cpp: +(WebCore): +(WebCore::isSchemaKnown): Check data version as well. +(WebCore::setUpMetadata): Ensure data version is recorded; bump schema version. +* Modules/indexeddb/IDBLevelDBCoding.cpp: Encoding for "DataVersion" global metadata entry. +(IDBLevelDBCoding): +(WebCore::IDBLevelDBCoding::compare): +(WebCore::IDBLevelDBCoding::DataVersionKey::encode): +* Modules/indexeddb/IDBLevelDBCoding.h: +(DataVersionKey): +(IDBLevelDBCoding): +* bindings/js/SerializedScriptValue.cpp: +(SerializedScriptValue::wireFormatVersion): New method (JSC side). +* bindings/js/SerializedScriptValue.h: +* bindings/v8/SerializedScriptValue.cpp: +(WebCore::SerializedScriptValue::wireFormatVersion): New method (V8 side). +(WebCore): +* bindings/v8/SerializedScriptValue.h: +(SerializedScriptValue): + 2012-12-07 Andreas Kling Throw away StyleResolvers that haven't been used for a long time. Modified: trunk/Source/WebCore/Modules/indexeddb/IDBBackingStore.cpp (136957 => 136958) --- trunk/Source/WebCore/Modules/indexeddb/IDBBackingStore.cpp 2012-12-07 16:54:31 UTC (rev 136957) +++ trunk/Source/WebCore/Modules/indexeddb/IDBBackingStore.cpp 2012-12-07 17:52:36 UTC (rev 136958) @@ -181,30 +181,51 @@ virtual const char* name() const { return "idb_cmp1"; } }; -const int64_t latestSchemaVersion = 1; +// 0 - Initial version. +// 1 - Adds UserIntVersion to DatabaseMetaData. +// 2 - Adds DataVersion to to global metadata. +const int64_t latestKnownSchemaVersion = 2; static bool isSchemaKnown(LevelDBDatabase* db) { -int64_t schemaVersion = 0; -const Vector metaDataKey = SchemaVersionKey::encode(); -if (!getInt(db, metaDataKey, schemaVersion)) +int64_t dbSchemaVersion = 0; +if (!getInt(db, SchemaVersionKey::encode(), dbSchemaVersion)) return true; -return schemaVersion <= latestSchemaVersion; +if (dbSchemaVersion > latestKnownSchemaVersion) +return false; + +const uint32_t latestKnownDataVersion = SerializedScriptValue::wireFormatVersion(); +int64_t dbDataVersion = 0; +if (!getInt(db, DataVersionKey::encode(), dbDataVersion)) +return true; + +if (dbDataVersion > latestKnownDataVersion) +return false; + +return true; } static bool setUpMetadata(LevelDBDatabase* db, cons
[webkit-changes] [136892] trunk/LayoutTests
Title: [136892] trunk/LayoutTests Revision 136892 Author jsb...@chromium.org Date 2012-12-06 14:30:06 -0800 (Thu, 06 Dec 2012) Log Message [Chromium] IndexedDB: storage/indexeddb/resources/cursor-advance.html flaky in content_shell after WK136782 https://bugs.webkit.org/show_bug.cgi?id=104292 Reviewed by Tony Chang. Test had a read-only transaction depending on the completion of a prior read-write transaction, which is not guaranteed by the spec. Switch from triggering the second transaction into the oncomplete of the first. * storage/indexeddb/resources/cursor-advance.js: (populateObjectStore): Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/storage/indexeddb/resources/cursor-advance.js Diff Modified: trunk/LayoutTests/ChangeLog (136891 => 136892) --- trunk/LayoutTests/ChangeLog 2012-12-06 22:21:27 UTC (rev 136891) +++ trunk/LayoutTests/ChangeLog 2012-12-06 22:30:06 UTC (rev 136892) @@ -1,3 +1,17 @@ +2012-12-06 Joshua Bell + +[Chromium] IndexedDB: storage/indexeddb/resources/cursor-advance.html flaky in content_shell after WK136782 +https://bugs.webkit.org/show_bug.cgi?id=104292 + +Reviewed by Tony Chang. + +Test had a read-only transaction depending on the completion of a prior read-write transaction, +which is not guaranteed by the spec. Switch from triggering the second transaction into the +oncomplete of the first. + +* storage/indexeddb/resources/cursor-advance.js: +(populateObjectStore): + 2012-12-06 Andrew Scherkus [Chromium] Unreviewed, rebaselining http/tests/media/video-buffered-range-contains-currentTime.html Modified: trunk/LayoutTests/storage/indexeddb/resources/cursor-advance.js (136891 => 136892) --- trunk/LayoutTests/storage/indexeddb/resources/cursor-advance.js 2012-12-06 22:21:27 UTC (rev 136891) +++ trunk/LayoutTests/storage/indexeddb/resources/cursor-advance.js 2012-12-06 22:30:06 UTC (rev 136892) @@ -51,7 +51,7 @@ request = evalAndLog("request = objectStore.add(objectStoreData[i].value, objectStoreData[i].key);"); request._onerror_ = unexpectedErrorCallback; } -request._onsuccess_ = testSimple; +trans._oncomplete_ = testSimple; } function createIndexes() ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [136869] trunk/Source/WebCore
Title: [136869] trunk/Source/WebCore Revision 136869 Author jsb...@chromium.org Date 2012-12-06 12:11:42 -0800 (Thu, 06 Dec 2012) Log Message IndexedDB: Remove IDBDatabaseException.idl https://bugs.webkit.org/show_bug.cgi?id=102961 Reviewed by Adam Barth. Delete the IDL and references to it. No longer needed as a enum member in the autogenerated ExceptionCodeDescription.h so removed from the ".in" file; only direct references are retained in the autogenerated cpp file. Ideally the code generator would handle these new-style DOMExceptions, but we don't have any other examples yet to know what pattern to follow. No new tests - just removing dead code. * CMakeLists.txt: * DerivedSources.cpp: * DerivedSources.make: * DerivedSources.pri: * GNUmakefile.list.am: * Modules/indexeddb/IDBDatabaseException.idl: Removed. * WebCore.gypi: * WebCore.vcproj/WebCore.vcproj: * WebCore.xcodeproj/project.pbxproj: * dom/DOMExceptions.in: * dom/make_dom_exceptions.pl: (generateImplementation): Modified Paths trunk/Source/WebCore/CMakeLists.txt trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/DerivedSources.cpp trunk/Source/WebCore/DerivedSources.make trunk/Source/WebCore/DerivedSources.pri trunk/Source/WebCore/GNUmakefile.list.am trunk/Source/WebCore/WebCore.gypi trunk/Source/WebCore/WebCore.vcproj/WebCore.vcproj trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj trunk/Source/WebCore/dom/DOMExceptions.in trunk/Source/WebCore/dom/make_dom_exceptions.pl Removed Paths trunk/Source/WebCore/Modules/indexeddb/IDBDatabaseException.idl Diff Modified: trunk/Source/WebCore/CMakeLists.txt (136868 => 136869) --- trunk/Source/WebCore/CMakeLists.txt 2012-12-06 20:02:19 UTC (rev 136868) +++ trunk/Source/WebCore/CMakeLists.txt 2012-12-06 20:11:42 UTC (rev 136869) @@ -189,7 +189,6 @@ Modules/indexeddb/IDBCursor.idl Modules/indexeddb/IDBCursorWithValue.idl Modules/indexeddb/IDBDatabase.idl -Modules/indexeddb/IDBDatabaseException.idl Modules/indexeddb/IDBFactory.idl Modules/indexeddb/IDBIndex.idl Modules/indexeddb/IDBKey.idl Modified: trunk/Source/WebCore/ChangeLog (136868 => 136869) --- trunk/Source/WebCore/ChangeLog 2012-12-06 20:02:19 UTC (rev 136868) +++ trunk/Source/WebCore/ChangeLog 2012-12-06 20:11:42 UTC (rev 136869) @@ -1,3 +1,32 @@ +2012-12-06 Joshua Bell + +IndexedDB: Remove IDBDatabaseException.idl +https://bugs.webkit.org/show_bug.cgi?id=102961 + +Reviewed by Adam Barth. + +Delete the IDL and references to it. No longer needed as a enum member +in the autogenerated ExceptionCodeDescription.h so removed from the ".in" +file; only direct references are retained in the autogenerated cpp file. + +Ideally the code generator would handle these new-style DOMExceptions, +but we don't have any other examples yet to know what pattern to follow. + +No new tests - just removing dead code. + +* CMakeLists.txt: +* DerivedSources.cpp: +* DerivedSources.make: +* DerivedSources.pri: +* GNUmakefile.list.am: +* Modules/indexeddb/IDBDatabaseException.idl: Removed. +* WebCore.gypi: +* WebCore.vcproj/WebCore.vcproj: +* WebCore.xcodeproj/project.pbxproj: +* dom/DOMExceptions.in: +* dom/make_dom_exceptions.pl: +(generateImplementation): + 2012-12-06 Andreas Kling [Mac] Drain the CSSValuePool on memory pressure. Modified: trunk/Source/WebCore/DerivedSources.cpp (136868 => 136869) --- trunk/Source/WebCore/DerivedSources.cpp 2012-12-06 20:02:19 UTC (rev 136868) +++ trunk/Source/WebCore/DerivedSources.cpp 2012-12-06 20:11:42 UTC (rev 136869) @@ -219,7 +219,6 @@ #include "JSIDBAny.cpp" #include "JSIDBCursor.cpp" #include "JSIDBDatabase.cpp" -#include "JSIDBDatabaseException.cpp" #include "JSIDBFactory.cpp" #include "JSIDBIndex.cpp" #include "JSIDBKey.cpp" Modified: trunk/Source/WebCore/DerivedSources.make (136868 => 136869) --- trunk/Source/WebCore/DerivedSources.make 2012-12-06 20:02:19 UTC (rev 136868) +++ trunk/Source/WebCore/DerivedSources.make 2012-12-06 20:11:42 UTC (rev 136869) @@ -95,7 +95,6 @@ $(WebCore)/Modules/indexeddb/IDBAny.idl \ $(WebCore)/Modules/indexeddb/IDBCursor.idl \ $(WebCore)/Modules/indexeddb/IDBDatabase.idl \ -$(WebCore)/Modules/indexeddb/IDBDatabaseException.idl \ $(WebCore)/Modules/indexeddb/IDBFactory.idl \ $(WebCore)/Modules/indexeddb/IDBIndex.idl \ $(WebCore)/Modules/indexeddb/IDBKey.idl \ Modified: trunk/Source/WebCore/DerivedSources.pri (136868 => 136869) --- trunk/Source/WebCore/DerivedSources.pri 2012-12-06 20:02:19 UTC (rev 136868) +++ trunk/Source/WebCore/DerivedSources.pri 2012-12-06 20:11:42 UTC (rev 136869) @@ -118,7 +118,6 @@ $$PWD/Modules/indexeddb/DOMWindowIndexedDatabase.idl \ $$PWD/Modules/indexeddb/IDBAny.idl \ $$PWD/Modules/indexeddb/IDBCursor.idl \ -$$PWD/Modules/indexeddb/IDBDatabaseException.idl
[webkit-changes] [136475] trunk
Title: [136475] trunk Revision 136475 Author jsb...@chromium.org Date 2012-12-03 23:17:04 -0800 (Mon, 03 Dec 2012) Log Message IndexedDB: Correct database version after aborted upgrade https://bugs.webkit.org/show_bug.cgi?id=103763 Reviewed by Tony Chang. Source/WebCore: After an aborted "versionchange" transaction, the IDBDatabase would fetch a fresh snapshot of the metadata from the back end. If the back end had already started a new "versionchange" transaction the snapshot would be bogus. Instead, save a copy of the IDBDatabase's metadata and roll back to that, as is done for IDBObjectStore. Tests: storage/indexeddb/intversion-abort-in-initial-upgradeneeded.html storage/indexeddb/mozilla/versionchange-abort.html storage/indexeddb/unblocked-version-changes.html * Modules/indexeddb/IDBDatabase.cpp: (WebCore::IDBDatabase::IDBDatabase): (WebCore::IDBDatabase::transactionCreated): * Modules/indexeddb/IDBDatabase.h: (WebCore::IDBDatabase::setMetadata): Let IDBOpenDBRequest and IDBTransaction tinker. * Modules/indexeddb/IDBOpenDBRequest.cpp: (WebCore::IDBOpenDBRequest::onUpgradeNeeded): Fetch new and compute old metadata. (WebCore::IDBOpenDBRequest::onSuccess): Fetch new metadata, in case upgrade changed it. * Modules/indexeddb/IDBTransaction.cpp: (WebCore::IDBTransaction::create): Stash the old metadata, in case of rollback. (WebCore::IDBTransaction::IDBTransaction): (WebCore::IDBTransaction::onAbort): Revert the database as well as the stores. * Modules/indexeddb/IDBTransaction.h: (IDBTransaction): Source/WebKit/chromium: Pass previously created proxy along in an open onSuccess, rather than a useless wrapper. * src/WebIDBCallbacksImpl.cpp: (WebKit::WebIDBCallbacksImpl::WebIDBCallbacksImpl): (WebKit::WebIDBCallbacksImpl::onSuccess): (WebKit::WebIDBCallbacksImpl::onUpgradeNeeded): * src/WebIDBCallbacksImpl.h: (WebCore): (WebIDBCallbacksImpl): LayoutTests: Update test expectations and tweak a test so it's testing what it claimed. * storage/indexeddb/intversion-abort-in-initial-upgradeneeded-expected.txt: * storage/indexeddb/mozilla/resources/versionchange-abort.js: (postAbort): * storage/indexeddb/mozilla/versionchange-abort-expected.txt: * storage/indexeddb/resources/unblocked-version-changes.js: (onUpgradeNeeded): * storage/indexeddb/unblocked-version-changes-expected.txt: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/storage/indexeddb/intversion-abort-in-initial-upgradeneeded-expected.txt trunk/LayoutTests/storage/indexeddb/mozilla/resources/versionchange-abort.js trunk/LayoutTests/storage/indexeddb/mozilla/versionchange-abort-expected.txt trunk/LayoutTests/storage/indexeddb/resources/unblocked-version-changes.js trunk/LayoutTests/storage/indexeddb/unblocked-version-changes-expected.txt trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/IDBDatabase.cpp trunk/Source/WebCore/Modules/indexeddb/IDBDatabase.h trunk/Source/WebCore/Modules/indexeddb/IDBOpenDBRequest.cpp trunk/Source/WebCore/Modules/indexeddb/IDBTransaction.cpp trunk/Source/WebCore/Modules/indexeddb/IDBTransaction.h trunk/Source/WebKit/chromium/ChangeLog trunk/Source/WebKit/chromium/src/WebIDBCallbacksImpl.cpp trunk/Source/WebKit/chromium/src/WebIDBCallbacksImpl.h Diff Modified: trunk/LayoutTests/ChangeLog (136474 => 136475) --- trunk/LayoutTests/ChangeLog 2012-12-04 06:59:22 UTC (rev 136474) +++ trunk/LayoutTests/ChangeLog 2012-12-04 07:17:04 UTC (rev 136475) @@ -1,3 +1,20 @@ +2012-12-03 Joshua Bell + +IndexedDB: Correct database version after aborted upgrade +https://bugs.webkit.org/show_bug.cgi?id=103763 + +Reviewed by Tony Chang. + +Update test expectations and tweak a test so it's testing what it claimed. + +* storage/indexeddb/intversion-abort-in-initial-upgradeneeded-expected.txt: +* storage/indexeddb/mozilla/resources/versionchange-abort.js: +(postAbort): +* storage/indexeddb/mozilla/versionchange-abort-expected.txt: +* storage/indexeddb/resources/unblocked-version-changes.js: +(onUpgradeNeeded): +* storage/indexeddb/unblocked-version-changes-expected.txt: + 2012-12-03 Roger Fong Unreviewed. Gardening of Apple Windows port. Modified: trunk/LayoutTests/storage/indexeddb/intversion-abort-in-initial-upgradeneeded-expected.txt (136474 => 136475) --- trunk/LayoutTests/storage/indexeddb/intversion-abort-in-initial-upgradeneeded-expected.txt 2012-12-04 06:59:22 UTC (rev 136474) +++ trunk/LayoutTests/storage/indexeddb/intversion-abort-in-initial-upgradeneeded-expected.txt 2012-12-04 07:17:04 UTC (rev 136475) @@ -16,14 +16,14 @@ transaction.abort() onAbort(): -FAIL event.target.db.version should be 0 (of type number). Was (of type string). +PASS event.target.db.version is 0 PASS request.transaction is non-null. onError(): PASS db is event.target.result PASS request is event.target PASS event.target.error.name is "AbortError" -FAIL event.target.result.versi
[webkit-changes] [136084] trunk
Title: [136084] trunk Revision 136084 Author jsb...@chromium.org Date 2012-11-28 18:24:38 -0800 (Wed, 28 Nov 2012) Log Message [Chromium] IndexedDB: Assert/crash in indexing layout tests in content_shell https://bugs.webkit.org/show_bug.cgi?id=103562 Reviewed by Tony Chang. Source/WebCore: In multi-process ports, an commit request or setIndexesReady request may arrive from the front-end after the back-end has already aborted. Don't freak out if those occur. Tests: storage/indexeddb/index-population.html storage/indexeddb/lazy-index-population.html storage/indexeddb/transaction-error.html * Modules/indexeddb/IDBObjectStoreBackendImpl.cpp: (WebCore::IDBObjectStoreBackendImpl::setIndexKeys): Ensure transaction hasn't finished before continuing. (WebCore::IDBObjectStoreBackendImpl::setIndexesReady): Ditto. * Modules/indexeddb/IDBTransactionBackendImpl.cpp: (WebCore::IDBTransactionBackendImpl::commit): Ignore a commit request if already aborted. LayoutTests: Fix an expectation glitch that may arise in multi-process ports (an error on the open request may arrive before logging has stopped; safe to ignore it). * storage/indexeddb/resources/transaction-error.js: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/storage/indexeddb/resources/transaction-error.js trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/IDBObjectStoreBackendImpl.cpp trunk/Source/WebCore/Modules/indexeddb/IDBTransactionBackendImpl.cpp trunk/Source/WebCore/Modules/indexeddb/IDBTransactionBackendImpl.h Diff Modified: trunk/LayoutTests/ChangeLog (136083 => 136084) --- trunk/LayoutTests/ChangeLog 2012-11-29 02:24:31 UTC (rev 136083) +++ trunk/LayoutTests/ChangeLog 2012-11-29 02:24:38 UTC (rev 136084) @@ -1,3 +1,15 @@ +2012-11-28 Joshua Bell + +[Chromium] IndexedDB: Assert/crash in indexing layout tests in content_shell +https://bugs.webkit.org/show_bug.cgi?id=103562 + +Reviewed by Tony Chang. + +Fix an expectation glitch that may arise in multi-process ports (an error on +the open request may arrive before logging has stopped; safe to ignore it). + +* storage/indexeddb/resources/transaction-error.js: + 2012-11-23 Dirk Schulze Remove -webkit-mask-attachment Modified: trunk/LayoutTests/storage/indexeddb/resources/transaction-error.js (136083 => 136084) --- trunk/LayoutTests/storage/indexeddb/resources/transaction-error.js 2012-11-29 02:24:31 UTC (rev 136083) +++ trunk/LayoutTests/storage/indexeddb/resources/transaction-error.js 2012-11-29 02:24:38 UTC (rev 136084) @@ -96,7 +96,7 @@ trans._oncomplete_ = function() { db.close(); evalAndLog("request = indexedDB.open(dbname, 2)"); -request._onerror_ = unexpectedSuccessCallback; +request._onsuccess_ = unexpectedSuccessCallback; request._onblocked_ = unexpectedBlockedCallback; request._onupgradeneeded_ = function() { evalAndLog("trans = request.transaction"); Modified: trunk/Source/WebCore/ChangeLog (136083 => 136084) --- trunk/Source/WebCore/ChangeLog 2012-11-29 02:24:31 UTC (rev 136083) +++ trunk/Source/WebCore/ChangeLog 2012-11-29 02:24:38 UTC (rev 136084) @@ -1,3 +1,23 @@ +2012-11-28 Joshua Bell + +[Chromium] IndexedDB: Assert/crash in indexing layout tests in content_shell +https://bugs.webkit.org/show_bug.cgi?id=103562 + +Reviewed by Tony Chang. + +In multi-process ports, an commit request or setIndexesReady request may arrive from the +front-end after the back-end has already aborted. Don't freak out if those occur. + +Tests: storage/indexeddb/index-population.html + storage/indexeddb/lazy-index-population.html + storage/indexeddb/transaction-error.html + +* Modules/indexeddb/IDBObjectStoreBackendImpl.cpp: +(WebCore::IDBObjectStoreBackendImpl::setIndexKeys): Ensure transaction hasn't finished before continuing. +(WebCore::IDBObjectStoreBackendImpl::setIndexesReady): Ditto. +* Modules/indexeddb/IDBTransactionBackendImpl.cpp: +(WebCore::IDBTransactionBackendImpl::commit): Ignore a commit request if already aborted. + 2012-11-28 Shinya Kawanaka [Shadow] Move Distribution requirements from ShadowRoot Modified: trunk/Source/WebCore/Modules/indexeddb/IDBObjectStoreBackendImpl.cpp (136083 => 136084) --- trunk/Source/WebCore/Modules/indexeddb/IDBObjectStoreBackendImpl.cpp 2012-11-29 02:24:31 UTC (rev 136083) +++ trunk/Source/WebCore/Modules/indexeddb/IDBObjectStoreBackendImpl.cpp 2012-11-29 02:24:38 UTC (rev 136084) @@ -226,6 +226,8 @@ IDB_TRACE("IDBObjectStoreBackendImpl::setIndexKeys"); RefPtr primaryKey = prpPrimaryKey; RefPtr transaction = IDBTransactionBackendImpl::from(transactionPtr); +if (transaction->isFinished()) +return; // FIXME: This method could be asynchronous, but we need to evaluate if it's worth the extra comple
[webkit-changes] [135927] trunk/Source
Title: [135927] trunk/Source Revision 135927 Author jsb...@chromium.org Date 2012-11-27 15:08:17 -0800 (Tue, 27 Nov 2012) Log Message IndexedDB: Simplify transaction timers and event tracking https://bugs.webkit.org/show_bug.cgi?id=102984 Reviewed by Tony Chang. Source/WebCore: Now that the transaction "commit" decision is made on the front-end, the back end no-longer needs to be aware of when individual IDBRequests have dispatched to script or track pending events (except for preemptive ones like createIndex). This also lets two timers be collapsed into one which significantly simplifies the code flow in IDBTransactionBackendImpl. No new tests - just simplification. Exercised by storage/indexeddb/transaction-*.html etc. * Modules/indexeddb/IDBCursorBackendImpl.cpp: (WebCore::IDBCursorBackendImpl::prefetchContinueInternal): No more tracking. (WebCore::IDBCursorBackendImpl::prefetchReset): No more tracking. * Modules/indexeddb/IDBDatabaseBackendImpl.cpp: (WebCore::IDBDatabaseBackendImpl::createObjectStoreInternal): No more tracking. (WebCore::IDBDatabaseBackendImpl::deleteObjectStoreInternal): No more tracking. * Modules/indexeddb/IDBObjectStoreBackendImpl.cpp: (WebCore::IDBObjectStoreBackendImpl::setIndexesReadyInternal): No more tracking. (WebCore::IDBObjectStoreBackendImpl::createIndexInternal): No more tracking. (WebCore::IDBObjectStoreBackendImpl::deleteIndexInternal): No more tracking. * Modules/indexeddb/IDBRequest.cpp: (WebCore::IDBRequest::dispatchEvent): Order must be: 1. request is unregistered from transaction (so request list may be empty) 2. abort transaction if event being dispatched was an error 3. deactivate transaction (which may commit if #1 left it empty and #2 didn't abort) * Modules/indexeddb/IDBTransactionBackendImpl.cpp: (WebCore::IDBTransactionBackendImpl::IDBTransactionBackendImpl): Need to track if commit was requested; previously the front end would have triggered an event timer which, on completion, would be the signal that the front end was finished. (WebCore::IDBTransactionBackendImpl::scheduleTask): Schedule a timer to service the new task, if necessary. (WebCore::IDBTransactionBackendImpl::abort): (WebCore::IDBTransactionBackendImpl::hasPendingTasks): (WebCore::IDBTransactionBackendImpl::commit): (WebCore::IDBTransactionBackendImpl::taskTimerFired): Picks up "commit" responsibilities from the now deleted taskEventTimerFired, if everything is truly complete done. * Modules/indexeddb/IDBTransactionBackendImpl.h: (IDBTransactionBackendImpl): * Modules/indexeddb/IDBTransactionBackendInterface.h: (WebCore::IDBTransactionBackendInterface::didCompleteTaskEvents): Removed from interface. Source/WebKit/chromium: Remove now-unused didCompleteTaskEvents() method. * src/IDBTransactionBackendProxy.cpp: * src/IDBTransactionBackendProxy.h: (IDBTransactionBackendProxy): * src/WebIDBTransactionImpl.cpp: * src/WebIDBTransactionImpl.h: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/IDBCursorBackendImpl.cpp trunk/Source/WebCore/Modules/indexeddb/IDBDatabaseBackendImpl.cpp trunk/Source/WebCore/Modules/indexeddb/IDBObjectStoreBackendImpl.cpp trunk/Source/WebCore/Modules/indexeddb/IDBRequest.cpp trunk/Source/WebCore/Modules/indexeddb/IDBTransactionBackendImpl.cpp trunk/Source/WebCore/Modules/indexeddb/IDBTransactionBackendImpl.h trunk/Source/WebCore/Modules/indexeddb/IDBTransactionBackendInterface.h trunk/Source/WebKit/chromium/ChangeLog trunk/Source/WebKit/chromium/src/IDBTransactionBackendProxy.cpp trunk/Source/WebKit/chromium/src/IDBTransactionBackendProxy.h trunk/Source/WebKit/chromium/src/WebIDBTransactionImpl.cpp trunk/Source/WebKit/chromium/src/WebIDBTransactionImpl.h Diff Modified: trunk/Source/WebCore/ChangeLog (135926 => 135927) --- trunk/Source/WebCore/ChangeLog 2012-11-27 23:01:26 UTC (rev 135926) +++ trunk/Source/WebCore/ChangeLog 2012-11-27 23:08:17 UTC (rev 135927) @@ -1,3 +1,48 @@ +2012-11-27 Joshua Bell + +IndexedDB: Simplify transaction timers and event tracking +https://bugs.webkit.org/show_bug.cgi?id=102984 + +Reviewed by Tony Chang. + +Now that the transaction "commit" decision is made on the front-end, the back end no-longer +needs to be aware of when individual IDBRequests have dispatched to script or track pending +events (except for preemptive ones like createIndex). This also lets two timers be collapsed +into one which significantly simplifies the code flow in IDBTransactionBackendImpl. + +No new tests - just simplification. Exercised by storage/indexeddb/transaction-*.html etc. + +* Modules/indexeddb/IDBCursorBackendImpl.cpp: +(WebCore::IDBCursorBackendImpl::prefetchContinueInternal): No more tracking. +(WebCore::IDBCursorBackendImpl::prefetchReset): No more tracking. +* Modules/indexeddb/IDBDatabaseBackendImpl.cpp: +(WebCore::IDBDatabaseBackendImpl::createObjectStoreInternal): No more tracking. +
[webkit-changes] [135332] trunk/Source/WebCore
Title: [135332] trunk/Source/WebCore Revision 135332 Author jsb...@chromium.org Date 2012-11-20 16:35:09 -0800 (Tue, 20 Nov 2012) Log Message IndexedDB: Move control of transaction completion to front end https://bugs.webkit.org/show_bug.cgi?id=100903 Reviewed by Tony Chang. "When a transaction can no longer become active, the implementation must attempt to commit it" - that is, all requests have dispatched success/error events and no further requests have been made. Previously, this was done by the back end waiting for events from the front end, but the front end can more efficiently make the decision. There should be no detectable behavior change. Tests: storage/indexeddb/transaction-*.html * Modules/indexeddb/IDBTransaction.cpp: (WebCore::IDBTransaction::IDBTransaction): (WebCore::IDBTransaction::setActive): (WebCore::IDBTransaction::registerRequest): * Modules/indexeddb/IDBTransaction.h: * Modules/indexeddb/IDBTransactionBackendImpl.cpp: (WebCore::IDBTransactionBackendImpl::hasPendingTasks): Added. (WebCore::IDBTransactionBackendImpl::didCompleteTaskEvents): (WebCore::IDBTransactionBackendImpl::run): (WebCore::IDBTransactionBackendImpl::taskEventTimerFired): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/IDBRequest.cpp trunk/Source/WebCore/Modules/indexeddb/IDBTransaction.cpp trunk/Source/WebCore/Modules/indexeddb/IDBTransaction.h trunk/Source/WebCore/Modules/indexeddb/IDBTransactionBackendImpl.cpp trunk/Source/WebCore/Modules/indexeddb/IDBTransactionBackendImpl.h Diff Modified: trunk/Source/WebCore/ChangeLog (135331 => 135332) --- trunk/Source/WebCore/ChangeLog 2012-11-21 00:27:00 UTC (rev 135331) +++ trunk/Source/WebCore/ChangeLog 2012-11-21 00:35:09 UTC (rev 135332) @@ -1,3 +1,30 @@ +2012-11-20 Joshua Bell + +IndexedDB: Move control of transaction completion to front end +https://bugs.webkit.org/show_bug.cgi?id=100903 + +Reviewed by Tony Chang. + +"When a transaction can no longer become active, the implementation must attempt to +commit it" - that is, all requests have dispatched success/error events and no further +requests have been made. Previously, this was done by the back end waiting for events +from the front end, but the front end can more efficiently make the decision. + +There should be no detectable behavior change. + +Tests: storage/indexeddb/transaction-*.html + +* Modules/indexeddb/IDBTransaction.cpp: +(WebCore::IDBTransaction::IDBTransaction): +(WebCore::IDBTransaction::setActive): +(WebCore::IDBTransaction::registerRequest): +* Modules/indexeddb/IDBTransaction.h: +* Modules/indexeddb/IDBTransactionBackendImpl.cpp: +(WebCore::IDBTransactionBackendImpl::hasPendingTasks): Added. +(WebCore::IDBTransactionBackendImpl::didCompleteTaskEvents): +(WebCore::IDBTransactionBackendImpl::run): +(WebCore::IDBTransactionBackendImpl::taskEventTimerFired): + 2012-11-20 Kentaro Hara Unreviewed. Rebaselined run-bindings-tests results. Modified: trunk/Source/WebCore/Modules/indexeddb/IDBRequest.cpp (135331 => 135332) --- trunk/Source/WebCore/Modules/indexeddb/IDBRequest.cpp 2012-11-21 00:27:00 UTC (rev 135331) +++ trunk/Source/WebCore/Modules/indexeddb/IDBRequest.cpp 2012-11-21 00:35:09 UTC (rev 135332) @@ -500,6 +500,11 @@ m_transaction->setActive(true); bool dontPreventDefault = IDBEventDispatcher::dispatch(event.get(), targets); + +if (m_transaction && m_readyState == DONE) +m_transaction->unregisterRequest(this); + +// If this was the last request in the transaction's list, it may commit here. if (setTransactionActive) m_transaction->setActive(false); @@ -518,9 +523,6 @@ if (event->type() != eventNames().blockedEvent) m_transaction->backend()->didCompleteTaskEvents(); - -if (m_readyState == DONE) -m_transaction->unregisterRequest(this); } return dontPreventDefault; Modified: trunk/Source/WebCore/Modules/indexeddb/IDBTransaction.cpp (135331 => 135332) --- trunk/Source/WebCore/Modules/indexeddb/IDBTransaction.cpp 2012-11-21 00:27:00 UTC (rev 135331) +++ trunk/Source/WebCore/Modules/indexeddb/IDBTransaction.cpp 2012-11-21 00:35:09 UTC (rev 135332) @@ -95,8 +95,7 @@ , m_objectStoreNames(objectStoreNames) , m_openDBRequest(openDBRequest) , m_mode(mode) -, m_active(true) -, m_state(Unused) +, m_state(Active) , m_hasPendingActivity(true) , m_contextStopped(false) { @@ -104,14 +103,12 @@ if (mode == VERSION_CHANGE) { // Not active until the callback. -m_active = false; -// Implicitly used by the version change itself. -m_state = Used; +m_state = Inactive; } // We pass a reference of this object before it can be adopted. relaxAdoptionRequirement(); -if (m_active) +
[webkit-changes] [135027] trunk
Title: [135027] trunk Revision 135027 Author jsb...@chromium.org Date 2012-11-16 18:08:13 -0800 (Fri, 16 Nov 2012) Log Message IndexedDB: Assert hit when getting non-existent object store in version change transaction https://bugs.webkit.org/show_bug.cgi?id=102547 Reviewed by Tony Chang. Source/WebCore: Code did not account for the not-found case in "versionchange" transactions, where all object stores are implicitly in scope. Test: storage/indexeddb/object-lookups-in-versionchange.html * Modules/indexeddb/IDBTransaction.cpp: (WebCore::IDBTransaction::objectStore): LayoutTests: Regression test - make sure that .objectStore() and .index() fail on unknown names in "versionchange" transactions. * storage/indexeddb/object-lookups-in-versionchange-expected.txt: Added. * storage/indexeddb/object-lookups-in-versionchange.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/IDBTransaction.cpp Added Paths trunk/LayoutTests/storage/indexeddb/object-lookups-in-versionchange-expected.txt trunk/LayoutTests/storage/indexeddb/object-lookups-in-versionchange.html Diff Modified: trunk/LayoutTests/ChangeLog (135026 => 135027) --- trunk/LayoutTests/ChangeLog 2012-11-17 02:03:58 UTC (rev 135026) +++ trunk/LayoutTests/ChangeLog 2012-11-17 02:08:13 UTC (rev 135027) @@ -1,3 +1,16 @@ +2012-11-16 Joshua Bell + +IndexedDB: Assert hit when getting non-existent object store in version change transaction +https://bugs.webkit.org/show_bug.cgi?id=102547 + +Reviewed by Tony Chang. + +Regression test - make sure that .objectStore() and .index() fail on unknown names +in "versionchange" transactions. + +* storage/indexeddb/object-lookups-in-versionchange-expected.txt: Added. +* storage/indexeddb/object-lookups-in-versionchange.html: Added. + 2012-11-16 Simon Fraser Eliminate ancestor tree walk computing outlineBoundsForRepaint() when updating layer positions Added: trunk/LayoutTests/storage/indexeddb/object-lookups-in-versionchange-expected.txt (0 => 135027) --- trunk/LayoutTests/storage/indexeddb/object-lookups-in-versionchange-expected.txt (rev 0) +++ trunk/LayoutTests/storage/indexeddb/object-lookups-in-versionchange-expected.txt 2012-11-17 02:08:13 UTC (rev 135027) @@ -0,0 +1,27 @@ +Regression test for http://webkit.org/b/102547 + +On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". + + +indexedDB = self.indexedDB || self.webkitIndexedDB || self.mozIndexedDB || self.msIndexedDB || self.OIndexedDB; + +dbname = "object-lookups-in-versionchange.html" +indexedDB.deleteDatabase(dbname) +indexedDB.open(dbname) +db = event.target.result +transaction = event.target.transaction +store = db.createObjectStore('store') + +Expecting exception from transaction.objectStore('no-such-store') +PASS Exception was thrown. +PASS code is DOMException.NOT_FOUND_ERR +PASS ename is 'NotFoundError' + +Expecting exception from store.index('no-such-index') +PASS Exception was thrown. +PASS code is DOMException.NOT_FOUND_ERR +PASS ename is 'NotFoundError' +PASS successfullyParsed is true + +TEST COMPLETE + Added: trunk/LayoutTests/storage/indexeddb/object-lookups-in-versionchange.html (0 => 135027) --- trunk/LayoutTests/storage/indexeddb/object-lookups-in-versionchange.html (rev 0) +++ trunk/LayoutTests/storage/indexeddb/object-lookups-in-versionchange.html 2012-11-17 02:08:13 UTC (rev 135027) @@ -0,0 +1,21 @@ + + + +description("Regression test for http://webkit.org/b/102547"); + +indexedDBTest(prepareDatabase, finishJSTest); + +function prepareDatabase() { +evalAndLog("db = event.target.result"); +evalAndLog("transaction = event.target.transaction"); +evalAndLog("store = db.createObjectStore('store')"); +debug(""); +evalAndExpectException("transaction.objectStore('no-such-store')", "DOMException.NOT_FOUND_ERR", "'NotFoundError'"); +debug(""); +evalAndExpectException("store.index('no-such-index')", "DOMException.NOT_FOUND_ERR", "'NotFoundError'"); +} + + +
[webkit-changes] [134838] trunk
Title: [134838] trunk Revision 134838 Author jsb...@chromium.org Date 2012-11-15 15:17:32 -0800 (Thu, 15 Nov 2012) Log Message IndexedDB: Indexing tests are flaky-crashing https://bugs.webkit.org/show_bug.cgi?id=102283 Reviewed by Tony Chang. Source/WebCore: Processing the final task can cause IDBTransactionBackendImpl references to be released by all holders. Prior to looping over the tasks (or, in an even earlier implementation, swapping queues) control would fall off the end of the function. The loop termination check introduced in http://wkrev.com/134529 requires that |this| be kept alive until the method completes. Test: storage/indexeddb/transaction-crash-in-tasks.html * Modules/indexeddb/IDBTransactionBackendImpl.cpp: (WebCore::IDBTransactionBackendImpl::abort): Rename self => protect. (WebCore::IDBTransactionBackendImpl::commit): Rename self => protect. (WebCore::IDBTransactionBackendImpl::taskTimerFired): New self-ref. LayoutTests: Reduced repro case, although the behavior is still flaky. * storage/indexeddb/transaction-crash-in-tasks-expected.txt: Added. * storage/indexeddb/transaction-crash-in-tasks.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/IDBTransactionBackendImpl.cpp Added Paths trunk/LayoutTests/storage/indexeddb/transaction-crash-in-tasks-expected.txt trunk/LayoutTests/storage/indexeddb/transaction-crash-in-tasks.html Diff Modified: trunk/LayoutTests/ChangeLog (134837 => 134838) --- trunk/LayoutTests/ChangeLog 2012-11-15 23:01:37 UTC (rev 134837) +++ trunk/LayoutTests/ChangeLog 2012-11-15 23:17:32 UTC (rev 134838) @@ -1,3 +1,15 @@ +2012-11-15 Joshua Bell + +IndexedDB: Indexing tests are flaky-crashing +https://bugs.webkit.org/show_bug.cgi?id=102283 + +Reviewed by Tony Chang. + +Reduced repro case, although the behavior is still flaky. + +* storage/indexeddb/transaction-crash-in-tasks-expected.txt: Added. +* storage/indexeddb/transaction-crash-in-tasks.html: Added. + 2012-11-15 Roger Fong Unreviewed. HiDPI is not enabled on Windows (as indicated by test result). Adding failing expected result. Added: trunk/LayoutTests/storage/indexeddb/transaction-crash-in-tasks-expected.txt (0 => 134838) --- trunk/LayoutTests/storage/indexeddb/transaction-crash-in-tasks-expected.txt (rev 0) +++ trunk/LayoutTests/storage/indexeddb/transaction-crash-in-tasks-expected.txt 2012-11-15 23:17:32 UTC (rev 134838) @@ -0,0 +1,14 @@ +Regression test for http://webkit.org/b/102283 + +On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". + + +indexedDB = self.indexedDB || self.webkitIndexedDB || self.mozIndexedDB || self.msIndexedDB || self.OIndexedDB; + +dbname = "transaction-crash-in-tasks.html" +indexedDB.open(dbname, 2) +indexedDB.open(dbname, 3) +PASS successfullyParsed is true + +TEST COMPLETE + Added: trunk/LayoutTests/storage/indexeddb/transaction-crash-in-tasks.html (0 => 134838) --- trunk/LayoutTests/storage/indexeddb/transaction-crash-in-tasks.html (rev 0) +++ trunk/LayoutTests/storage/indexeddb/transaction-crash-in-tasks.html 2012-11-15 23:17:32 UTC (rev 134838) @@ -0,0 +1,19 @@ + + + +description("Regression test for http://webkit.org/b/102283"); + +test(); +function test() { +removeVendorPrefixes(); +setDBNameFromPath(); + +evalAndLog("indexedDB.open(dbname, 2)"); +evalAndLog("indexedDB.open(dbname, 3)"); + +finishJSTest(); +} + +
[webkit-changes] [134685] trunk/Source/WebCore
Title: [134685] trunk/Source/WebCore Revision 134685 Author jsb...@chromium.org Date 2012-11-14 15:52:06 -0800 (Wed, 14 Nov 2012) Log Message IndexedDB: Indexing tests are flaky-crashing https://bugs.webkit.org/show_bug.cgi?id=102283 Reviewed by Tony Chang. Don't commit the transaction if there are outstanding pre-emptive events from indexing operations. Speculative fix for the flakiness. * Modules/indexeddb/IDBTransactionBackendImpl.cpp: (WebCore::IDBTransactionBackendImpl::taskEventTimerFired): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/IDBTransactionBackendImpl.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (134684 => 134685) --- trunk/Source/WebCore/ChangeLog 2012-11-14 23:43:25 UTC (rev 134684) +++ trunk/Source/WebCore/ChangeLog 2012-11-14 23:52:06 UTC (rev 134685) @@ -1,3 +1,18 @@ +2012-11-14 Joshua Bell + +IndexedDB: Indexing tests are flaky-crashing +https://bugs.webkit.org/show_bug.cgi?id=102283 + +Reviewed by Tony Chang. + +Don't commit the transaction if there are outstanding pre-emptive events +from indexing operations. + +Speculative fix for the flakiness. + +* Modules/indexeddb/IDBTransactionBackendImpl.cpp: +(WebCore::IDBTransactionBackendImpl::taskEventTimerFired): + 2012-11-14 Tony Chang Crash in flexbox when removing absolutely positioned children Modified: trunk/Source/WebCore/Modules/indexeddb/IDBTransactionBackendImpl.cpp (134684 => 134685) --- trunk/Source/WebCore/Modules/indexeddb/IDBTransactionBackendImpl.cpp 2012-11-14 23:43:25 UTC (rev 134684) +++ trunk/Source/WebCore/Modules/indexeddb/IDBTransactionBackendImpl.cpp 2012-11-14 23:52:06 UTC (rev 134685) @@ -262,7 +262,7 @@ IDB_TRACE("IDBTransactionBackendImpl::taskEventTimerFired"); ASSERT(m_state == Running); -if (!m_pendingEvents && isTaskQueueEmpty()) { +if (!m_pendingEvents && !m_pendingPreemptiveEvents && isTaskQueueEmpty()) { // The last task event has completed and the task // queue is empty. Commit the transaction. commit(); ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [134680] trunk/Source
Title: [134680] trunk/Source Revision 134680 Author jsb...@chromium.org Date 2012-11-14 15:28:54 -0800 (Wed, 14 Nov 2012) Log Message IndexedDB: Remove magic numbers in record comparator, handle missing case https://bugs.webkit.org/show_bug.cgi?id=102255 Reviewed by Tony Chang. Source/WebCore: For some ranges of metadata entries, a simple type byte comparison is sufficient for the backing store comparator. In two places those ranges used magic numbers, one of which was incorrect - which could lead to failed reads/writes. Test: webkit_unit_tests --gtest_filter='IDBLevelDBCodingTest.ComparisonTest' * Modules/indexeddb/IDBLevelDBCoding.cpp: (IDBLevelDBCoding): (WebCore::IDBLevelDBCoding::compare): * Modules/indexeddb/IDBLevelDBCoding.h: Source/WebKit/chromium: Add test keys for various metadata types. * tests/IDBLevelDBCodingTest.cpp: (IDBLevelDBCoding::TEST): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/IDBLevelDBCoding.cpp trunk/Source/WebCore/Modules/indexeddb/IDBLevelDBCoding.h trunk/Source/WebKit/chromium/ChangeLog trunk/Source/WebKit/chromium/tests/IDBLevelDBCodingTest.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (134679 => 134680) --- trunk/Source/WebCore/ChangeLog 2012-11-14 23:27:11 UTC (rev 134679) +++ trunk/Source/WebCore/ChangeLog 2012-11-14 23:28:54 UTC (rev 134680) @@ -1,3 +1,21 @@ +2012-11-14 Joshua Bell + +IndexedDB: Remove magic numbers in record comparator, handle missing case +https://bugs.webkit.org/show_bug.cgi?id=102255 + +Reviewed by Tony Chang. + +For some ranges of metadata entries, a simple type byte comparison is sufficient +for the backing store comparator. In two places those ranges used magic numbers, +one of which was incorrect - which could lead to failed reads/writes. + +Test: webkit_unit_tests --gtest_filter='IDBLevelDBCodingTest.ComparisonTest' + +* Modules/indexeddb/IDBLevelDBCoding.cpp: +(IDBLevelDBCoding): +(WebCore::IDBLevelDBCoding::compare): +* Modules/indexeddb/IDBLevelDBCoding.h: + 2012-11-14 Dirk Schulze Cleanup BasicShape blending check Modified: trunk/Source/WebCore/Modules/indexeddb/IDBLevelDBCoding.cpp (134679 => 134680) --- trunk/Source/WebCore/Modules/indexeddb/IDBLevelDBCoding.cpp 2012-11-14 23:27:11 UTC (rev 134679) +++ trunk/Source/WebCore/Modules/indexeddb/IDBLevelDBCoding.cpp 2012-11-14 23:28:54 UTC (rev 134680) @@ -61,6 +61,7 @@ // => utf16 database name [DatabaseMetaDataKey] // => utf16 user version data [DatabaseMetaDataKey] // => maximum object store id ever allocated [DatabaseMetaDataKey] +// => user integer version (var int) [DatabaseMetaDataKey] // // // Object store meta-data: @@ -153,6 +154,7 @@ static const unsigned char SchemaVersionTypeByte = 0; static const unsigned char MaxDatabaseIdTypeByte = 1; +static const unsigned char MaxSimpleGlobalMetaDataTypeByte = 2; // Insert before this and increment. static const unsigned char DatabaseFreeListTypeByte = 100; static const unsigned char DatabaseNameTypeByte = 201; @@ -857,9 +859,9 @@ if (int x = typeByteA - typeByteB) return x; - -if (typeByteA <= 1) +if (typeByteA < MaxSimpleGlobalMetaDataTypeByte) return 0; + if (typeByteA == DatabaseFreeListTypeByte) return compare(a, b); if (typeByteA == DatabaseNameTypeByte) @@ -875,9 +877,7 @@ if (int x = typeByteA - typeByteB) return x; - -// FIXME: Replace this magic number. Should it account for UserIntVersion? -if (typeByteA <= 3) +if (typeByteA < DatabaseMetaDataKey::MaxSimpleMetaDataType) return 0; if (typeByteA == ObjectStoreMetaDataTypeByte) @@ -892,9 +892,6 @@ return compare(a, b); if (typeByteA == IndexNamesKeyTypeByte) return compare(a, b); - -// FIXME: Assert not reached here? -return 0; } if (prefixA.type() == KeyPrefix::ObjectStoreData) { Modified: trunk/Source/WebCore/Modules/indexeddb/IDBLevelDBCoding.h (134679 => 134680) --- trunk/Source/WebCore/Modules/indexeddb/IDBLevelDBCoding.h 2012-11-14 23:27:11 UTC (rev 134679) +++ trunk/Source/WebCore/Modules/indexeddb/IDBLevelDBCoding.h 2012-11-14 23:28:54 UTC (rev 134680) @@ -146,7 +146,8 @@ DatabaseName = 1, UserVersion = 2, MaxObjectStoreId = 3, -UserIntVersion = 4 +UserIntVersion = 4, +MaxSimpleMetaDataType = 5 }; static Vector encode(int64_t databaseId, MetaDataType); Modified: trunk/Source/WebKit/chromium/ChangeLog (134679 => 134680) --- trunk/Source/WebKit/chromium/ChangeLog 2012-11-14 23:27:11 UTC (rev 134679) +++ trunk/Source/WebKit/chromium/ChangeLog 2012-11-14 23:28:54 UTC (rev 134680) @@ -1,3 +1,15 @@ +2012-11-14 Joshua Bell + +IndexedDB: Remove magic numbers in record comparator, han
[webkit-changes] [134646] trunk/Source/WebCore
Title: [134646] trunk/Source/WebCore Revision 134646 Author jsb...@chromium.org Date 2012-11-14 12:22:41 -0800 (Wed, 14 Nov 2012) Log Message Rename NATIVE_TYPE_ERR to TypeError https://bugs.webkit.org/show_bug.cgi?id=102114 Reviewed by Kentaro Hara. Defines names (mostly) matching WebIDL exception types for use by dom (etc) code. V8 binding code had colliding enum members, which required prefixing. No new tests - just internal renames. * Modules/indexeddb/IDBCursor.cpp: s/NATIVE_TYPE_ERR/TypeError/g (WebCore::IDBCursor::advance): (WebCore::IDBCursor::stringToDirection): (WebCore::IDBCursor::directionToString): * Modules/indexeddb/IDBDatabase.cpp: Ditto. (WebCore::IDBDatabase::setVersion): * Modules/indexeddb/IDBFactory.cpp: Ditto. (WebCore::IDBFactory::open): (WebCore::IDBFactory::openInternal): (WebCore::IDBFactory::deleteDatabase): * Modules/indexeddb/IDBObjectStore.cpp: Ditto. (WebCore::IDBObjectStore::createIndex): * Modules/indexeddb/IDBTransaction.cpp: Ditto. (WebCore::IDBTransaction::stringToMode): (WebCore::IDBTransaction::modeToString): * bindings/js/JSDOMBinding.cpp: Ditto. (WebCore::setDOMException): * bindings/v8/DateExtension.cpp: Prefix ErrorType enum/members w/ V8/v8. (WebCore::DateExtension::OnSleepDetected): * bindings/v8/NPV8Object.cpp: Ditto. (_NPN_SetException): * bindings/v8/V8Binding.cpp: Ditto. (WebCore::throwError): (WebCore::handleMaxRecursionDepthExceeded): * bindings/v8/V8Binding.h: Ditto. (WebCore): * bindings/v8/V8NPObject.cpp: Ditto. (WebCore::npObjectInvokeImpl): (WebCore::npObjectGetProperty): (WebCore::npObjectSetProperty): (WebCore::npObjectPropertyEnumerator): * bindings/v8/V8ThrowException.cpp: Rename ALL the errors! (WebCore::V8ThrowException::setDOMException): (WebCore::V8ThrowException::throwError): (WebCore::V8ThrowException::throwTypeError): (WebCore::V8ThrowException::throwNotEnoughArgumentsError): * bindings/v8/V8ThrowException.h: (V8ThrowException): * bindings/v8/WorkerContextExecutionProxy.cpp: Prefixing (continued) (WebCore::WorkerContextExecutionProxy::evaluate): * bindings/v8/custom/V8ArrayBufferCustom.cpp: Ditto. (WebCore::V8ArrayBuffer::constructorCallback): * bindings/v8/custom/V8ArrayBufferViewCustom.h: Ditto. (WebCore::constructWebGLArrayWithArrayBufferArgument): (WebCore::constructWebGLArray): (WebCore::setWebGLArrayHelper): * bindings/v8/custom/V8AudioContextCustom.cpp: Ditto. (WebCore::V8AudioContext::constructorCallback): * bindings/v8/custom/V8BlobCustom.cpp: Ditto. (WebCore::V8Blob::constructorCallback): * bindings/v8/custom/V8ClipboardCustom.cpp: Ditto. (WebCore::V8Clipboard::clearDataCallback): (WebCore::V8Clipboard::setDragImageCallback): * bindings/v8/custom/V8DOMFormDataCustom.cpp: Ditto. (WebCore::V8DOMFormData::appendCallback): * bindings/v8/custom/V8SQLResultSetRowListCustom.cpp: Ditto. (WebCore::V8SQLResultSetRowList::itemCallback): * dom/ExceptionCode.h: Add WebIDL exception types. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/IDBCursor.cpp trunk/Source/WebCore/Modules/indexeddb/IDBDatabase.cpp trunk/Source/WebCore/Modules/indexeddb/IDBFactory.cpp trunk/Source/WebCore/Modules/indexeddb/IDBObjectStore.cpp trunk/Source/WebCore/Modules/indexeddb/IDBTransaction.cpp trunk/Source/WebCore/bindings/js/JSDOMBinding.cpp trunk/Source/WebCore/bindings/v8/DateExtension.cpp trunk/Source/WebCore/bindings/v8/NPV8Object.cpp trunk/Source/WebCore/bindings/v8/V8Binding.cpp trunk/Source/WebCore/bindings/v8/V8Binding.h trunk/Source/WebCore/bindings/v8/V8NPObject.cpp trunk/Source/WebCore/bindings/v8/V8ThrowException.cpp trunk/Source/WebCore/bindings/v8/V8ThrowException.h trunk/Source/WebCore/bindings/v8/WorkerContextExecutionProxy.cpp trunk/Source/WebCore/bindings/v8/custom/V8ArrayBufferCustom.cpp trunk/Source/WebCore/bindings/v8/custom/V8ArrayBufferViewCustom.h trunk/Source/WebCore/bindings/v8/custom/V8AudioContextCustom.cpp trunk/Source/WebCore/bindings/v8/custom/V8BlobCustom.cpp trunk/Source/WebCore/bindings/v8/custom/V8ClipboardCustom.cpp trunk/Source/WebCore/bindings/v8/custom/V8DOMFormDataCustom.cpp trunk/Source/WebCore/bindings/v8/custom/V8SQLResultSetRowListCustom.cpp trunk/Source/WebCore/dom/ExceptionCode.h Diff Modified: trunk/Source/WebCore/ChangeLog (134645 => 134646) --- trunk/Source/WebCore/ChangeLog 2012-11-14 20:19:15 UTC (rev 134645) +++ trunk/Source/WebCore/ChangeLog 2012-11-14 20:22:41 UTC (rev 134646) @@ -1,3 +1,74 @@ +2012-11-14 Joshua Bell + +Rename NATIVE_TYPE_ERR to TypeError +https://bugs.webkit.org/show_bug.cgi?id=102114 + +Reviewed by Kentaro Hara. + +Defines names (mostly) matching WebIDL exception types for use by dom (etc) code. +V8 binding code had colliding enum members, which required prefixing. + +No new tests - just internal renames. + +* Modules/indexeddb/IDBCursor.cpp: s/NATIVE_TYPE_ERR/TypeError/g +(WebCore::IDBCursor::advance): +(WebCore::IDBCursor::stringToDirection): +(WebCore::
[webkit-changes] [134529] trunk/Source/WebCore
Title: [134529] trunk/Source/WebCore Revision 134529 Author jsb...@chromium.org Date 2012-11-13 20:33:39 -0800 (Tue, 13 Nov 2012) Log Message IndexedDB: Run multiple tasks per transaction tick https://bugs.webkit.org/show_bug.cgi?id=97738 Reviewed by Tony Chang. Process multiple tasks from the pending queue(s) when the timer fires. The task may initiate new tasks that change which queue is active (e.g. indexing operations) so the loop must re-check each tick which queue to use. In DumpRenderTree, time to make 20k puts/20k gets dropped from 3.2s to 2.0s (-37%); in Chromium's content_shell, the time dropped from 8.1s to 4.6s (-42%). No new tests - just perf improvements, covered by (nearly) all existing IDB tests. * Modules/indexeddb/IDBTransactionBackendImpl.cpp: (WebCore::IDBTransactionBackendImpl::abort): Use takeFirst() to clean up code. (WebCore::IDBTransactionBackendImpl::taskTimerFired): Process as many tasks as are available. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/IDBTransactionBackendImpl.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (134528 => 134529) --- trunk/Source/WebCore/ChangeLog 2012-11-14 04:25:11 UTC (rev 134528) +++ trunk/Source/WebCore/ChangeLog 2012-11-14 04:33:39 UTC (rev 134529) @@ -1,3 +1,23 @@ +2012-11-13 Joshua Bell + +IndexedDB: Run multiple tasks per transaction tick +https://bugs.webkit.org/show_bug.cgi?id=97738 + +Reviewed by Tony Chang. + +Process multiple tasks from the pending queue(s) when the timer fires. The +task may initiate new tasks that change which queue is active (e.g. indexing +operations) so the loop must re-check each tick which queue to use. + +In DumpRenderTree, time to make 20k puts/20k gets dropped from 3.2s to 2.0s (-37%); +in Chromium's content_shell, the time dropped from 8.1s to 4.6s (-42%). + +No new tests - just perf improvements, covered by (nearly) all existing IDB tests. + +* Modules/indexeddb/IDBTransactionBackendImpl.cpp: +(WebCore::IDBTransactionBackendImpl::abort): Use takeFirst() to clean up code. +(WebCore::IDBTransactionBackendImpl::taskTimerFired): Process as many tasks as are available. + 2012-11-13 Elliott Sprehn Disable frame loading instead of throwing exceptions on subtree modifications in ChildFrameDisconnector Modified: trunk/Source/WebCore/Modules/indexeddb/IDBTransactionBackendImpl.cpp (134528 => 134529) --- trunk/Source/WebCore/Modules/indexeddb/IDBTransactionBackendImpl.cpp 2012-11-14 04:25:11 UTC (rev 134528) +++ trunk/Source/WebCore/Modules/indexeddb/IDBTransactionBackendImpl.cpp 2012-11-14 04:33:39 UTC (rev 134529) @@ -122,8 +122,7 @@ // Run the abort tasks, if any. while (!m_abortTaskQueue.isEmpty()) { -OwnPtr task(m_abortTaskQueue.first().release()); -m_abortTaskQueue.removeFirst(); +OwnPtr task(m_abortTaskQueue.takeFirst()); task->performTask(0); } @@ -246,15 +245,15 @@ m_state = Running; } -// Just process a single event here, in case the event itself -// changes which queue should be processed next. -TaskQueue& taskQueue = m_pendingPreemptiveEvents ? m_preemptiveTaskQueue : m_taskQueue; -if (!taskQueue.isEmpty() && m_state != Finished) { +TaskQueue* taskQueue = m_pendingPreemptiveEvents ? &m_preemptiveTaskQueue : &m_taskQueue; +while (!taskQueue->isEmpty() && m_state != Finished) { ASSERT(m_state == Running); -OwnPtr task(taskQueue.first().release()); -taskQueue.removeFirst(); +OwnPtr task(taskQueue->takeFirst()); m_pendingEvents++; task->performTask(0); + +// Event itself may change which queue should be processed next. +taskQueue = m_pendingPreemptiveEvents ? &m_preemptiveTaskQueue : &m_taskQueue; } } ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [134527] trunk/Source/WebCore
Title: [134527] trunk/Source/WebCore Revision 134527 Author jsb...@chromium.org Date 2012-11-13 20:22:39 -0800 (Tue, 13 Nov 2012) Log Message [V8] Add missing ENABLE(SVG) test in header https://bugs.webkit.org/show_bug.cgi?id=102143 Reviewed by Kentaro Hara. Need to wrap the #include of a header that's only conditionally generated. Fixes build error if compiling e.g. w/ GYP_DEFINES="enable_svg=0" * bindings/v8/custom/V8ElementCustom.cpp: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/bindings/v8/custom/V8ElementCustom.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (134526 => 134527) --- trunk/Source/WebCore/ChangeLog 2012-11-14 04:21:41 UTC (rev 134526) +++ trunk/Source/WebCore/ChangeLog 2012-11-14 04:22:39 UTC (rev 134527) @@ -1,3 +1,16 @@ +2012-11-13 Joshua Bell + +[V8] Add missing ENABLE(SVG) test in header +https://bugs.webkit.org/show_bug.cgi?id=102143 + +Reviewed by Kentaro Hara. + +Need to wrap the #include of a header that's only conditionally generated. + +Fixes build error if compiling e.g. w/ GYP_DEFINES="enable_svg=0" + +* bindings/v8/custom/V8ElementCustom.cpp: + 2012-11-13 Jon Lee Automatically run small plugins Modified: trunk/Source/WebCore/bindings/v8/custom/V8ElementCustom.cpp (134526 => 134527) --- trunk/Source/WebCore/bindings/v8/custom/V8ElementCustom.cpp 2012-11-14 04:21:41 UTC (rev 134526) +++ trunk/Source/WebCore/bindings/v8/custom/V8ElementCustom.cpp 2012-11-14 04:22:39 UTC (rev 134527) @@ -33,7 +33,10 @@ #include "V8Element.h" #include "V8HTMLElement.h" + +#if ENABLE(SVG) #include "V8SVGElement.h" +#endif namespace WebCore { ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [134439] trunk/LayoutTests
Title: [134439] trunk/LayoutTests Revision 134439 Author jsb...@chromium.org Date 2012-11-13 10:45:34 -0800 (Tue, 13 Nov 2012) Log Message IndexedDB: storage/indexeddb/mozilla/add-twice-failure.html is flaky following r134252 https://bugs.webkit.org/show_bug.cgi?id=101996 Reviewed by Dimitri Glazkov. Error being tested may cause transaction to abort, which could happen before or after test output is captured. Prevent default behavior of the error so this doesn't happen. * storage/indexeddb/mozilla/resources/add-twice-failure.js: (addSecondExpectedError): Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/storage/indexeddb/mozilla/resources/add-twice-failure.js Diff Modified: trunk/LayoutTests/ChangeLog (134438 => 134439) --- trunk/LayoutTests/ChangeLog 2012-11-13 18:26:38 UTC (rev 134438) +++ trunk/LayoutTests/ChangeLog 2012-11-13 18:45:34 UTC (rev 134439) @@ -1,3 +1,16 @@ +2012-11-13 Joshua Bell + +IndexedDB: storage/indexeddb/mozilla/add-twice-failure.html is flaky following r134252 +https://bugs.webkit.org/show_bug.cgi?id=101996 + +Reviewed by Dimitri Glazkov. + +Error being tested may cause transaction to abort, which could happen before or after +test output is captured. Prevent default behavior of the error so this doesn't happen. + +* storage/indexeddb/mozilla/resources/add-twice-failure.js: +(addSecondExpectedError): + 2012-11-13 Erik Arvidsson Update DOMException name: HierarchyRequestError Modified: trunk/LayoutTests/storage/indexeddb/mozilla/resources/add-twice-failure.js (134438 => 134439) --- trunk/LayoutTests/storage/indexeddb/mozilla/resources/add-twice-failure.js 2012-11-13 18:26:38 UTC (rev 134438) +++ trunk/LayoutTests/storage/indexeddb/mozilla/resources/add-twice-failure.js 2012-11-13 18:45:34 UTC (rev 134439) @@ -35,5 +35,6 @@ function addSecondExpectedError() { shouldBe("event.target.errorCode", "IDBDatabaseException.CONSTRAINT_ERR"); +event.preventDefault(); finishJSTest(); } ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [134343] trunk/LayoutTests
Title: [134343] trunk/LayoutTests Revision 134343 Author jsb...@chromium.org Date 2012-11-12 19:38:47 -0800 (Mon, 12 Nov 2012) Log Message IndexedDB: storage/indexeddb/cursor-prev-no-duplicate.html is flaky https://bugs.webkit.org/show_bug.cgi?id=101990 Reviewed by Tony Chang. Race condition in test leads to flaky behavior. Refactor test to remove flake and clean up output. * storage/indexeddb/cursor-prev-no-duplicate-expected.txt: * storage/indexeddb/resources/cursor-prev-no-duplicate.js: (testFarRangeCursor_closed): (.trans.oncomplete): (.storeReq.onsuccess): (runTest): Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/storage/indexeddb/cursor-prev-no-duplicate-expected.txt trunk/LayoutTests/storage/indexeddb/resources/cursor-prev-no-duplicate.js Diff Modified: trunk/LayoutTests/ChangeLog (134342 => 134343) --- trunk/LayoutTests/ChangeLog 2012-11-13 03:09:31 UTC (rev 134342) +++ trunk/LayoutTests/ChangeLog 2012-11-13 03:38:47 UTC (rev 134343) @@ -1,3 +1,20 @@ +2012-11-12 Joshua Bell + +IndexedDB: storage/indexeddb/cursor-prev-no-duplicate.html is flaky +https://bugs.webkit.org/show_bug.cgi?id=101990 + +Reviewed by Tony Chang. + +Race condition in test leads to flaky behavior. Refactor test to remove flake +and clean up output. + +* storage/indexeddb/cursor-prev-no-duplicate-expected.txt: +* storage/indexeddb/resources/cursor-prev-no-duplicate.js: +(testFarRangeCursor_closed): +(.trans.oncomplete): +(.storeReq.onsuccess): +(runTest): + 2012-11-12 Hayato Ito Unreviewed, gardening. Modified: trunk/LayoutTests/storage/indexeddb/cursor-prev-no-duplicate-expected.txt (134342 => 134343) --- trunk/LayoutTests/storage/indexeddb/cursor-prev-no-duplicate-expected.txt 2012-11-13 03:09:31 UTC (rev 134342) +++ trunk/LayoutTests/storage/indexeddb/cursor-prev-no-duplicate-expected.txt 2012-11-13 03:38:47 UTC (rev 134343) @@ -20,103 +20,90 @@ store.put({sorted: 10, value: 444}, 17) store.put({sorted: 10, value: 555}, 16) store.put({sorted: 10, value: 666}, 15) + testFarRangeCursor: upper bound is well out of range, results always the same, whether open or closed storeReq = store.openCursor(IDBKeyRange.upperBound(7, false), 'prev') - -Testing: store.openCursor(IDBKeyRange.upperBound(7, false), 'prev') PASS cursor.key is 3 PASS cursor.value.value is 333 -storeReq = store.openCursor(IDBKeyRange.upperBound(7, true), 'prev') DONE -Testing: store.openCursor(IDBKeyRange.upperBound(7, true), 'prev') +storeReq = store.openCursor(IDBKeyRange.upperBound(7, true), 'prev') PASS cursor.key is 3 PASS cursor.value.value is 333 -storeReq = index.openCursor(IDBKeyRange.upperBound(7, false), 'prev') DONE -Testing: index.openCursor(IDBKeyRange.upperBound(7, false), 'prev') +storeReq = index.openCursor(IDBKeyRange.upperBound(7, false), 'prev') PASS cursor.key is 3 PASS cursor.value.value is 111 PASS cursor.primaryKey is 1 -storeReq = index.openCursor(IDBKeyRange.upperBound(7, true), 'prev') DONE -Testing: index.openCursor(IDBKeyRange.upperBound(7, true), 'prev') +storeReq = index.openCursor(IDBKeyRange.upperBound(7, true), 'prev') PASS cursor.key is 3 PASS cursor.value.value is 111 PASS cursor.primaryKey is 1 -storeReq = index.openKeyCursor(IDBKeyRange.upperBound(7, false), 'prev') DONE -Testing: index.openKeyCursor(IDBKeyRange.upperBound(7, false), 'prev') +storeReq = index.openKeyCursor(IDBKeyRange.upperBound(7, false), 'prev') PASS cursor.key is 3 PASS cursor.primaryKey is 1 -storeReq = index.openKeyCursor(IDBKeyRange.upperBound(7, true), 'prev') DONE -Testing: index.openKeyCursor(IDBKeyRange.upperBound(7, true), 'prev') +storeReq = index.openKeyCursor(IDBKeyRange.upperBound(7, true), 'prev') PASS cursor.key is 3 PASS cursor.primaryKey is 1 -storeReq = store.openCursor(IDBKeyRange.upperBound(3, false), 'prev') DONE -Testing: store.openCursor(IDBKeyRange.upperBound(3, false), 'prev') +storeReq = store.openCursor(IDBKeyRange.upperBound(3, false), 'prev') PASS cursor.key is 3 PASS cursor.value.value is 333 -storeReq = store.openCursor(IDBKeyRange.upperBound(3, true), 'prev') DONE -Testing: store.openCursor(IDBKeyRange.upperBound(3, true), 'prev') +storeReq = store.openCursor(IDBKeyRange.upperBound(3, true), 'prev') PASS cursor.key is 2 PASS cursor.value.value is 222 -storeReq = index.openCursor(IDBKeyRange.upperBound(3, false), 'prev') DONE -Testing: index.openCursor(IDBKeyRange.upperBound(3, false), 'prev') +storeReq = index.openCursor(IDBKeyRange.upperBound(3, false), 'prev') PASS cursor.key is 3 PASS cursor.value.value is 111 PASS cursor.primaryKey is 1 -storeReq = index.openCursor(IDBKeyRange.upperBound(3, true), 'prev') DONE -Testing: index.openCursor(IDBKeyRange.upperBound(3, true), 'prev') +storeReq = index.openCursor(IDBKeyRange.upperBound(3, true), 'prev') PASS cursor.key is 2 PASS cursor.value.value is 222 PASS cursor.primaryKey is 2 -sto
[webkit-changes] [134342] trunk/Source/WebCore
Title: [134342] trunk/Source/WebCore Revision 134342 Author jsb...@chromium.org Date 2012-11-12 19:09:31 -0800 (Mon, 12 Nov 2012) Log Message IndexedDB: Use sequence<> instead of DOMString[] in IDL https://bugs.webkit.org/show_bug.cgi?id=100539 Reviewed by Adam Barth. In the binding layer, DOMString[] is implemented as an alias for DOMStringList. WebIDL usage is tending towards sequence anyway for inputs, so switch to that. Note webkit.org/b/100537 which requires sequence instead. Covered by storage/indexeddb/transaction-basics.html and objectstore-basics.html * Modules/indexeddb/IDBDatabase.cpp: (WebCore::IDBDatabase::transaction): DOMStringList -> Vector * Modules/indexeddb/IDBDatabase.h: (WebCore::IDBDatabase::transaction): (IDBDatabase): * Modules/indexeddb/IDBDatabase.idl: DOMString[] -> sequence * Modules/indexeddb/IDBObjectStore.cpp: Move trivial impls to header. * Modules/indexeddb/IDBObjectStore.h: (WebCore::IDBObjectStore::createIndex): * Modules/indexeddb/IDBObjectStore.idl: DOMString[] -> sequence Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/IDBDatabase.cpp trunk/Source/WebCore/Modules/indexeddb/IDBDatabase.h trunk/Source/WebCore/Modules/indexeddb/IDBDatabase.idl trunk/Source/WebCore/Modules/indexeddb/IDBObjectStore.cpp trunk/Source/WebCore/Modules/indexeddb/IDBObjectStore.h trunk/Source/WebCore/Modules/indexeddb/IDBObjectStore.idl Diff Modified: trunk/Source/WebCore/ChangeLog (134341 => 134342) --- trunk/Source/WebCore/ChangeLog 2012-11-13 02:48:40 UTC (rev 134341) +++ trunk/Source/WebCore/ChangeLog 2012-11-13 03:09:31 UTC (rev 134342) @@ -1,3 +1,27 @@ +2012-11-12 Joshua Bell + +IndexedDB: Use sequence<> instead of DOMString[] in IDL +https://bugs.webkit.org/show_bug.cgi?id=100539 + +Reviewed by Adam Barth. + +In the binding layer, DOMString[] is implemented as an alias for DOMStringList. +WebIDL usage is tending towards sequence anyway for inputs, so switch +to that. Note webkit.org/b/100537 which requires sequence instead. + +Covered by storage/indexeddb/transaction-basics.html and objectstore-basics.html + +* Modules/indexeddb/IDBDatabase.cpp: +(WebCore::IDBDatabase::transaction): DOMStringList -> Vector +* Modules/indexeddb/IDBDatabase.h: +(WebCore::IDBDatabase::transaction): +(IDBDatabase): +* Modules/indexeddb/IDBDatabase.idl: DOMString[] -> sequence +* Modules/indexeddb/IDBObjectStore.cpp: Move trivial impls to header. +* Modules/indexeddb/IDBObjectStore.h: +(WebCore::IDBObjectStore::createIndex): +* Modules/indexeddb/IDBObjectStore.idl: DOMString[] -> sequence + 2012-11-12 Anders Carlsson Remove Leopard only gradient code Modified: trunk/Source/WebCore/Modules/indexeddb/IDBDatabase.cpp (134341 => 134342) --- trunk/Source/WebCore/Modules/indexeddb/IDBDatabase.cpp 2012-11-13 02:48:40 UTC (rev 134341) +++ trunk/Source/WebCore/Modules/indexeddb/IDBDatabase.cpp 2012-11-13 03:09:31 UTC (rev 134342) @@ -226,11 +226,9 @@ return request; } -PassRefPtr IDBDatabase::transaction(ScriptExecutionContext* context, PassRefPtr prpStoreNames, const String& modeString, ExceptionCode& ec) +PassRefPtr IDBDatabase::transaction(ScriptExecutionContext* context, const Vector& scope, const String& modeString, ExceptionCode& ec) { -RefPtr storeNames = prpStoreNames; -ASSERT(storeNames.get()); -if (storeNames->isEmpty()) { +if (!scope.size()) { ec = IDBDatabaseException::IDB_INVALID_ACCESS_ERR; return 0; } @@ -245,8 +243,8 @@ } Vector objectStoreIds; -for (size_t i = 0; i < storeNames->length(); ++i) { -int64_t objectStoreId = findObjectStoreId(storeNames->item(i)); +for (size_t i = 0; i < scope.size(); ++i) { +int64_t objectStoreId = findObjectStoreId(scope[i]); if (objectStoreId == IDBObjectStoreMetadata::InvalidId) { ec = IDBDatabaseException::IDB_NOT_FOUND_ERR; return 0; @@ -263,7 +261,7 @@ ASSERT(ec); return 0; } -RefPtr transaction = IDBTransaction::create(context, transactionBackend, *storeNames, mode, this); +RefPtr transaction = IDBTransaction::create(context, transactionBackend, scope, mode, this); transactionBackend->setCallbacks(transaction.get()); return transaction.release(); } Modified: trunk/Source/WebCore/Modules/indexeddb/IDBDatabase.h (134341 => 134342) --- trunk/Source/WebCore/Modules/indexeddb/IDBDatabase.h 2012-11-13 02:48:40 UTC (rev 134341) +++ trunk/Source/WebCore/Modules/indexeddb/IDBDatabase.h 2012-11-13 03:09:31 UTC (rev 134342) @@ -64,7 +64,8 @@ PassRefPtr objectStoreNames() const; PassRefPtr createObjectStore(const String& name, const Dictionary&, ExceptionCode&); -PassRefPtr transaction(ScriptExecutionContext*, PassRefPtr, const String& mode, ExceptionCode&); +PassRefPtr transaction(Scri
[webkit-changes] [134136] trunk/LayoutTests
Title: [134136] trunk/LayoutTests Revision 134136 Author jsb...@chromium.org Date 2012-11-09 16:46:06 -0800 (Fri, 09 Nov 2012) Log Message [Chromium] Unreviewed gardening. One more baseline following 134112. * platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/composited-iframe-alignment-expected.png: Added. Modified Paths trunk/LayoutTests/ChangeLog Added Paths trunk/LayoutTests/platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/ trunk/LayoutTests/platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/composited-iframe-alignment-expected.png Diff Modified: trunk/LayoutTests/ChangeLog (134135 => 134136) --- trunk/LayoutTests/ChangeLog 2012-11-10 00:16:52 UTC (rev 134135) +++ trunk/LayoutTests/ChangeLog 2012-11-10 00:46:06 UTC (rev 134136) @@ -1,3 +1,9 @@ +2012-11-09 Joshua Bell + +[Chromium] Unreviewed gardening. One more baseline following 134112. + +* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/composited-iframe-alignment-expected.png: Added. + 2012-11-09 Tien-Ren Chen Correct hit-test point scaling for document.elementFromPoint Added: trunk/LayoutTests/platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/composited-iframe-alignment-expected.png (Binary files differ) Property changes on: trunk/LayoutTests/platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/composited-iframe-alignment-expected.png ___ Added: svn:mime-type ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [134124] trunk/LayoutTests
Title: [134124] trunk/LayoutTests Revision 134124 Author jsb...@chromium.org Date 2012-11-09 15:46:00 -0800 (Fri, 09 Nov 2012) Log Message [Chromium] Unreviewed gardening. A few more baselines following 134112. * platform/chromium-mac-lion/platform/chromium/virtual/softwarecompositing/overflow/overflow-positioning-expected.png: Added. * platform/chromium-mac-snowleopard/platform/chromium/virtual/softwarecompositing/overflow/overflow-positioning-expected.png: Added. * platform/chromium-mac-snowleopard/platform/chromium/virtual/softwarecompositing/reflections/reflection-opacity-expected.png: Added. * platform/chromium-mac/platform/chromium/virtual/softwarecompositing/overflow/clip-content-under-overflow-controls-expected.png: Added. * platform/chromium-mac/platform/chromium/virtual/softwarecompositing/overflow/overflow-positioning-expected.png: Added. * platform/chromium-mac/platform/chromium/virtual/softwarecompositing/reflections/reflection-opacity-expected.png: Added. * platform/chromium-mac/platform/chromium/virtual/softwarecompositing/repaint/newly-composited-on-scroll-expected.png: Added. * platform/chromium-win/platform/chromium/virtual/softwarecompositing/absolute-position-changed-with-composited-parent-layer-expected.png: Added. * platform/chromium-win/platform/chromium/virtual/softwarecompositing/iframes/composited-iframe-alignment-expected.png: Added. Modified Paths trunk/LayoutTests/ChangeLog Added Paths trunk/LayoutTests/platform/chromium-mac/platform/chromium/virtual/softwarecompositing/overflow/ trunk/LayoutTests/platform/chromium-mac/platform/chromium/virtual/softwarecompositing/overflow/clip-content-under-overflow-controls-expected.png trunk/LayoutTests/platform/chromium-mac/platform/chromium/virtual/softwarecompositing/overflow/overflow-positioning-expected.png trunk/LayoutTests/platform/chromium-mac/platform/chromium/virtual/softwarecompositing/reflections/reflection-opacity-expected.png trunk/LayoutTests/platform/chromium-mac/platform/chromium/virtual/softwarecompositing/repaint/newly-composited-on-scroll-expected.png trunk/LayoutTests/platform/chromium-mac-lion/platform/chromium/virtual/softwarecompositing/overflow/ trunk/LayoutTests/platform/chromium-mac-lion/platform/chromium/virtual/softwarecompositing/overflow/overflow-positioning-expected.png trunk/LayoutTests/platform/chromium-mac-snowleopard/platform/chromium/virtual/softwarecompositing/overflow/ trunk/LayoutTests/platform/chromium-mac-snowleopard/platform/chromium/virtual/softwarecompositing/overflow/overflow-positioning-expected.png trunk/LayoutTests/platform/chromium-mac-snowleopard/platform/chromium/virtual/softwarecompositing/reflections/reflection-opacity-expected.png trunk/LayoutTests/platform/chromium-win/platform/chromium/virtual/softwarecompositing/absolute-position-changed-with-composited-parent-layer-expected.png trunk/LayoutTests/platform/chromium-win/platform/chromium/virtual/softwarecompositing/iframes/ trunk/LayoutTests/platform/chromium-win/platform/chromium/virtual/softwarecompositing/iframes/composited-iframe-alignment-expected.png Diff Modified: trunk/LayoutTests/ChangeLog (134123 => 134124) --- trunk/LayoutTests/ChangeLog 2012-11-09 23:40:16 UTC (rev 134123) +++ trunk/LayoutTests/ChangeLog 2012-11-09 23:46:00 UTC (rev 134124) @@ -1,5 +1,19 @@ 2012-11-09 Joshua Bell +[Chromium] Unreviewed gardening. A few more baselines following 134112. + +* platform/chromium-mac-lion/platform/chromium/virtual/softwarecompositing/overflow/overflow-positioning-expected.png: Added. +* platform/chromium-mac-snowleopard/platform/chromium/virtual/softwarecompositing/overflow/overflow-positioning-expected.png: Added. +* platform/chromium-mac-snowleopard/platform/chromium/virtual/softwarecompositing/reflections/reflection-opacity-expected.png: Added. +* platform/chromium-mac/platform/chromium/virtual/softwarecompositing/overflow/clip-content-under-overflow-controls-expected.png: Added. +* platform/chromium-mac/platform/chromium/virtual/softwarecompositing/overflow/overflow-positioning-expected.png: Added. +* platform/chromium-mac/platform/chromium/virtual/softwarecompositing/reflections/reflection-opacity-expected.png: Added. +* platform/chromium-mac/platform/chromium/virtual/softwarecompositing/repaint/newly-composited-on-scroll-expected.png: Added. +* platform/chromium-win/platform/chromium/virtual/softwarecompositing/absolute-position-changed-with-composited-parent-layer-expected.png: Added. +* platform/chromium-win/platform/chromium/virtual/softwarecompositing/iframes/composited-iframe-alignment-expected.png: Added. + +2012-11-09 Joshua Bell + [Chromium] Unreviewed gardening. Widen cross-fade-invalidation expectation to include all platforms. * platform/chromium/TestExpectations: Added: trunk/LayoutTests/platform/chromium-mac/platform/chromium/virtual/softwarecompositing/overflow/clip-content-under-
[webkit-changes] [134123] trunk/LayoutTests
Title: [134123] trunk/LayoutTests Revision 134123 Author jsb...@chromium.org Date 2012-11-09 15:40:16 -0800 (Fri, 09 Nov 2012) Log Message [Chromium] Unreviewed gardening. Widen cross-fade-invalidation expectation to include all platforms. * platform/chromium/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/chromium/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (134122 => 134123) --- trunk/LayoutTests/ChangeLog 2012-11-09 23:37:23 UTC (rev 134122) +++ trunk/LayoutTests/ChangeLog 2012-11-09 23:40:16 UTC (rev 134123) @@ -1,3 +1,9 @@ +2012-11-09 Joshua Bell + +[Chromium] Unreviewed gardening. Widen cross-fade-invalidation expectation to include all platforms. + +* platform/chromium/TestExpectations: + 2012-11-09 Raphael Kubo da Costa [EFL] Unreviewed gardening. Modified: trunk/LayoutTests/platform/chromium/TestExpectations (134122 => 134123) --- trunk/LayoutTests/platform/chromium/TestExpectations 2012-11-09 23:37:23 UTC (rev 134122) +++ trunk/LayoutTests/platform/chromium/TestExpectations 2012-11-09 23:40:16 UTC (rev 134123) @@ -3076,7 +3076,7 @@ webkit.org/b/76488 css3/images/cross-fade-background-size.html [ Failure ImageOnlyFailure ] -webkit.org/b/81542 [ SnowLeopard ] css3/images/cross-fade-invalidation.html [ ImageOnlyFailure Pass ] +webkit.org/b/81542 css3/images/cross-fade-invalidation.html [ ImageOnlyFailure Pass ] webkit.org/b/76727 fast/multicol/span/span-as-immediate-child-property-removal.html [ Failure ImageOnlyFailure Pass ] webkit.org/b/76727 fast/multicol/span/span-as-immediate-columns-child-removal.html [ Failure ImageOnlyFailure Pass ] ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [134115] trunk/LayoutTests
Title: [134115] trunk/LayoutTests Revision 134115 Author jsb...@chromium.org Date 2012-11-09 14:31:11 -0800 (Fri, 09 Nov 2012) Log Message [Chromium] Unreviewed gardening. Updated expectations following 134112. * platform/chromium/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/chromium/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (134114 => 134115) --- trunk/LayoutTests/ChangeLog 2012-11-09 22:28:47 UTC (rev 134114) +++ trunk/LayoutTests/ChangeLog 2012-11-09 22:31:11 UTC (rev 134115) @@ -1,3 +1,9 @@ +2012-11-09 Joshua Bell + +[Chromium] Unreviewed gardening. Updated expectations following 134112. + +* platform/chromium/TestExpectations: + 2012-11-09 Slavomir Kaslev [chromium] Rebaselining software compositor tests. Modified: trunk/LayoutTests/platform/chromium/TestExpectations (134114 => 134115) --- trunk/LayoutTests/platform/chromium/TestExpectations 2012-11-09 22:28:47 UTC (rev 134114) +++ trunk/LayoutTests/platform/chromium/TestExpectations 2012-11-09 22:31:11 UTC (rev 134115) @@ -3448,7 +3448,7 @@ webkit.org/b/86909 [ Win ] http/tests/inspector/network/network-content-replacement-xhr.html [ Pass Timeout ] webkit.org/b/86909 [ Win Debug ] http/tests/security/referrer-policy-redirect-link.html [ Pass Timeout ] webkit.org/b/86909 [ Win Debug ] platform/chromium/virtual/gpu/fast/canvas/imagedata-contains-uint8clampedarray.html [ Pass Timeout ] -#webkit.org/b/86909 [ Win ] platform/chromium/virtual/gpu/fast/canvas/webgl/webgl-composite-modes-repaint.html [ Pass Slow ] +webkit.org/b/86909 [ Win ] platform/chromium/virtual/gpu/fast/canvas/webgl/webgl-composite-modes-repaint.html [ Pass Slow ] # Ref-tests can't have platform specific results. webkit.org/b/87175 fast/regions/floats-basic-in-variable-width-regions.html @@ -4202,13 +4202,6 @@ webkit.org/b/101618 [ Win7 Debug ] http/tests/inspector/indexeddb/database-data.html [ Crash ] -# Failures following Chromium r166632: -# The following test has prior expectations which were disabled. Re-enable when removing this: -crbug.com/160075 fast/canvas/webgl/webgl-composite-modes-repaint.html [ ImageOnlyFailure ] -crbug.com/160075 fast/canvas/webgl/webgl-composite-modes.html [ ImageOnlyFailure ] -crbug.com/160075 platform/chromium/virtual/gpu/fast/canvas/webgl/webgl-composite-modes-repaint.html [ ImageOnlyFailure ] -crbug.com/160075 platform/chromium/virtual/gpu/fast/canvas/webgl/webgl-composite-modes.html [ ImageOnlyFailure ] - # Failures following r133840: webkit.org/b/101547 fast/repaint/4774354.html [ ImageOnlyFailure ] webkit.org/b/101547 fast/repaint/caret-outside-block.html [ ImageOnlyFailure ] ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [134110] trunk/LayoutTests
Title: [134110] trunk/LayoutTests Revision 134110 Author jsb...@chromium.org Date 2012-11-09 14:00:28 -0800 (Fri, 09 Nov 2012) Log Message [Chromium] Unreviewed gardening, failing new hidpi tests in r134099/r134100 * platform/chromium/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/chromium/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (134109 => 134110) --- trunk/LayoutTests/ChangeLog 2012-11-09 21:53:27 UTC (rev 134109) +++ trunk/LayoutTests/ChangeLog 2012-11-09 22:00:28 UTC (rev 134110) @@ -1,3 +1,9 @@ +2012-11-09 Joshua Bell + +[Chromium] Unreviewed gardening, failing new hidpi tests in r134099/r134100 + +* platform/chromium/TestExpectations: + 2012-11-09 Dirk Pranke Unreviewed, last few chromium-mac-mountainlion expectations cleaned up. Modified: trunk/LayoutTests/platform/chromium/TestExpectations (134109 => 134110) --- trunk/LayoutTests/platform/chromium/TestExpectations 2012-11-09 21:53:27 UTC (rev 134109) +++ trunk/LayoutTests/platform/chromium/TestExpectations 2012-11-09 22:00:28 UTC (rev 134110) @@ -4282,3 +4282,8 @@ webkit.org/b/101547 svg/custom/hit-test-unclosed-subpaths.svg [ ImageOnlyFailure ] # The following test has prior expectations which were disabled. Re-enable when removing this: webkit.org/b/101547 svg/custom/hit-test-with-br.xhtml [ ImageOnlyFailure ] + +webkit.org/b/101794 fast/canvas/canvas-as-image-hidpi.html [ ImageOnlyFailure ] +webkit.org/b/101794 platform/chromium/virtual/gpu/fast/canvas/canvas-as-image-hidpi.html [ ImageOnlyFailure ] +webkit.org/b/101794 fast/canvas/canvas-resize-reset-pixelRatio.html [ Failure ] +webkit.org/b/101794 platform/chromium/virtual/gpu/fast/canvas/canvas-resize-reset-pixelRatio.html [ Failure ] ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [134091] trunk/Source/WebCore
Title: [134091] trunk/Source/WebCore Revision 134091 Author jsb...@chromium.org Date 2012-11-09 11:27:35 -0800 (Fri, 09 Nov 2012) Log Message [Chromium] Unreviewed gardening. Fix chromium-win builds following r134082 * WebCore.gypi: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/WebCore.gypi Diff Modified: trunk/Source/WebCore/ChangeLog (134090 => 134091) --- trunk/Source/WebCore/ChangeLog 2012-11-09 19:15:32 UTC (rev 134090) +++ trunk/Source/WebCore/ChangeLog 2012-11-09 19:27:35 UTC (rev 134091) @@ -1,3 +1,9 @@ +2012-11-09 Joshua Bell + +[Chromium] Unreviewed gardening. Fix chromium-win builds following r134082 + +* WebCore.gypi: + 2012-11-09 Dan Carney [V8] Remove ScriptController::windowShell() Modified: trunk/Source/WebCore/WebCore.gypi (134090 => 134091) --- trunk/Source/WebCore/WebCore.gypi 2012-11-09 19:15:32 UTC (rev 134090) +++ trunk/Source/WebCore/WebCore.gypi 2012-11-09 19:27:35 UTC (rev 134091) @@ -312,7 +312,6 @@ 'platform/PlatformMouseEvent.h', 'platform/PlatformScreen.h', 'platform/PlatformStrategies.h', -'platform/PlatformCookieJar.h', 'platform/PlatformWheelEvent.h', 'platform/PopupMenu.h', 'platform/PopupMenuClient.h', @@ -479,6 +478,7 @@ 'platform/network/HTTPHeaderMap.h', 'platform/network/MIMEHeader.h', 'platform/network/NetworkingContext.h', +'platform/network/PlatformCookieJar.h', 'platform/network/ProtectionSpace.h', 'platform/network/ProtectionSpaceHash.h', 'platform/network/ProxyServer.h', ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [134076] trunk/LayoutTests
Title: [134076] trunk/LayoutTests Revision 134076 Author jsb...@chromium.org Date 2012-11-09 09:16:30 -0800 (Fri, 09 Nov 2012) Log Message [Chromium] Unreviewed gardening - rebaseline a handful of image tests for chromium-mac-lion. * platform/chromium-mac-lion/platform/chromium/compositing/layout-width-change-expected.png: Added. * platform/chromium-mac-lion/platform/chromium/compositing/video-frame-size-change-expected.png: Added. * platform/chromium-mac-lion/tables/mozilla_expected_failures/core/backgrounds-expected.png: Added. * platform/chromium-mac-lion/tables/mozilla_expected_failures/core/captions1-expected.png: Added. * platform/chromium-mac-lion/tables/mozilla_expected_failures/core/captions2-expected.png: Added. * platform/chromium-mac-lion/tables/mozilla_expected_failures/core/captions3-expected.png: Added. * platform/chromium-mac-lion/tables/mozilla_expected_failures/marvin/backgr_border-table-cell-expected.png: Added. * platform/chromium-mac-lion/tables/mozilla_expected_failures/marvin/backgr_border-table-column-group-expected.png: Added. Modified Paths trunk/LayoutTests/ChangeLog Added Paths trunk/LayoutTests/platform/chromium-mac-lion/platform/chromium/compositing/layout-width-change-expected.png trunk/LayoutTests/platform/chromium-mac-lion/platform/chromium/compositing/video-frame-size-change-expected.png trunk/LayoutTests/platform/chromium-mac-lion/tables/mozilla_expected_failures/core/backgrounds-expected.png trunk/LayoutTests/platform/chromium-mac-lion/tables/mozilla_expected_failures/core/captions1-expected.png trunk/LayoutTests/platform/chromium-mac-lion/tables/mozilla_expected_failures/core/captions2-expected.png trunk/LayoutTests/platform/chromium-mac-lion/tables/mozilla_expected_failures/core/captions3-expected.png trunk/LayoutTests/platform/chromium-mac-lion/tables/mozilla_expected_failures/marvin/backgr_border-table-cell-expected.png trunk/LayoutTests/platform/chromium-mac-lion/tables/mozilla_expected_failures/marvin/backgr_border-table-column-group-expected.png Diff Modified: trunk/LayoutTests/ChangeLog (134075 => 134076) --- trunk/LayoutTests/ChangeLog 2012-11-09 17:09:06 UTC (rev 134075) +++ trunk/LayoutTests/ChangeLog 2012-11-09 17:16:30 UTC (rev 134076) @@ -1,3 +1,16 @@ +2012-11-09 Joshua Bell + +[Chromium] Unreviewed gardening - rebaseline a handful of image tests for chromium-mac-lion. + +* platform/chromium-mac-lion/platform/chromium/compositing/layout-width-change-expected.png: Added. +* platform/chromium-mac-lion/platform/chromium/compositing/video-frame-size-change-expected.png: Added. +* platform/chromium-mac-lion/tables/mozilla_expected_failures/core/backgrounds-expected.png: Added. +* platform/chromium-mac-lion/tables/mozilla_expected_failures/core/captions1-expected.png: Added. +* platform/chromium-mac-lion/tables/mozilla_expected_failures/core/captions2-expected.png: Added. +* platform/chromium-mac-lion/tables/mozilla_expected_failures/core/captions3-expected.png: Added. +* platform/chromium-mac-lion/tables/mozilla_expected_failures/marvin/backgr_border-table-cell-expected.png: Added. +* platform/chromium-mac-lion/tables/mozilla_expected_failures/marvin/backgr_border-table-column-group-expected.png: Added. + 2012-11-09 Jussi Kukkonen [EFL] Rebaseline svg tests after 99870 Added: trunk/LayoutTests/platform/chromium-mac-lion/platform/chromium/compositing/layout-width-change-expected.png (Binary files differ) Property changes on: trunk/LayoutTests/platform/chromium-mac-lion/platform/chromium/compositing/layout-width-change-expected.png ___ Added: svn:mime-type Added: trunk/LayoutTests/platform/chromium-mac-lion/platform/chromium/compositing/video-frame-size-change-expected.png (Binary files differ) Property changes on: trunk/LayoutTests/platform/chromium-mac-lion/platform/chromium/compositing/video-frame-size-change-expected.png ___ Added: svn:mime-type Added: trunk/LayoutTests/platform/chromium-mac-lion/tables/mozilla_expected_failures/core/backgrounds-expected.png (Binary files differ) Property changes on: trunk/LayoutTests/platform/chromium-mac-lion/tables/mozilla_expected_failures/core/backgrounds-expected.png ___ Added: svn:mime-type Added: trunk/LayoutTests/platform/chromium-mac-lion/tables/mozilla_expected_failures/core/captions1-expected.png (Binary files differ) Property changes on: trunk/LayoutTests/platform/chromium-mac-lion/tables/mozilla_expected_failures/core/captions1-expected.png ___ Added: svn:mime-type Added: trunk/LayoutTests/platform/chromium-mac-lion/tables/mozilla_expected_failures/core/captions2-expected.png (Binary files differ) Property changes on: trunk/LayoutTe
[webkit-changes] [133986] trunk/LayoutTests
Title: [133986] trunk/LayoutTests Revision 133986 Author jsb...@chromium.org Date 2012-11-08 17:41:00 -0800 (Thu, 08 Nov 2012) Log Message [Chromium] Unreviewed gardening following r133972. * platform/chromium-win/platform/chromium/virtual/deferred/fast/images/exif-orientation-expected.png: Added. Modified Paths trunk/LayoutTests/ChangeLog Added Paths trunk/LayoutTests/platform/chromium-win/platform/chromium/virtual/deferred/fast/images/exif-orientation-expected.png Diff Modified: trunk/LayoutTests/ChangeLog (133985 => 133986) --- trunk/LayoutTests/ChangeLog 2012-11-09 01:38:12 UTC (rev 133985) +++ trunk/LayoutTests/ChangeLog 2012-11-09 01:41:00 UTC (rev 133986) @@ -1,3 +1,9 @@ +2012-11-08 Joshua Bell + +[Chromium] Unreviewed gardening following r133972. + +* platform/chromium-win/platform/chromium/virtual/deferred/fast/images/exif-orientation-expected.png: Added. + 2012-11-08 Kenichi Ishibashi [Chromium] Arabic digits should appear left-to-right Added: trunk/LayoutTests/platform/chromium-win/platform/chromium/virtual/deferred/fast/images/exif-orientation-expected.png (Binary files differ) Property changes on: trunk/LayoutTests/platform/chromium-win/platform/chromium/virtual/deferred/fast/images/exif-orientation-expected.png ___ Added: svn:mime-type ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [133965] trunk/LayoutTests
Title: [133965] trunk/LayoutTests Revision 133965 Author jsb...@chromium.org Date 2012-11-08 15:50:12 -0800 (Thu, 08 Nov 2012) Log Message [Chromium] Unreviewed gardening. Added missing *-expected.txt following rebaselines. * platform/chromium-mac/fast/css/text-overflow-input-expected.txt: Added. * platform/chromium-mac/fast/forms/input-readonly-dimmed-expected.txt: Added. * platform/chromium-mac/fast/forms/input-text-scroll-left-on-blur-expected.txt: Added. Modified Paths trunk/LayoutTests/ChangeLog Added Paths trunk/LayoutTests/platform/chromium-mac/fast/css/text-overflow-input-expected.txt trunk/LayoutTests/platform/chromium-mac/fast/forms/input-readonly-dimmed-expected.txt trunk/LayoutTests/platform/chromium-mac/fast/forms/input-text-scroll-left-on-blur-expected.txt Diff Modified: trunk/LayoutTests/ChangeLog (133964 => 133965) --- trunk/LayoutTests/ChangeLog 2012-11-08 23:50:02 UTC (rev 133964) +++ trunk/LayoutTests/ChangeLog 2012-11-08 23:50:12 UTC (rev 133965) @@ -1,3 +1,11 @@ +2012-11-08 Joshua Bell + + [Chromium] Unreviewed gardening. Added missing *-expected.txt following rebaselines. + +* platform/chromium-mac/fast/css/text-overflow-input-expected.txt: Added. +* platform/chromium-mac/fast/forms/input-readonly-dimmed-expected.txt: Added. +* platform/chromium-mac/fast/forms/input-text-scroll-left-on-blur-expected.txt: Added. + 2012-11-08 Yael Aharon Unreviewed. Some more gardening after r133898. Added: trunk/LayoutTests/platform/chromium-mac/fast/css/text-overflow-input-expected.txt (0 => 133965) --- trunk/LayoutTests/platform/chromium-mac/fast/css/text-overflow-input-expected.txt (rev 0) +++ trunk/LayoutTests/platform/chromium-mac/fast/css/text-overflow-input-expected.txt 2012-11-08 23:50:12 UTC (rev 133965) @@ -0,0 +1,242 @@ +layer at (0,0) size 800x600 + RenderView at (0,0) size 800x600 +layer at (0,0) size 800x290 + RenderBlock {HTML} at (0,0) size 800x290 +RenderBody {BODY} at (8,16) size 784x258 + RenderBlock {P} at (0,0) size 784x18 +RenderText {#text} at (0,0) size 308x18 + text run at (0,0) width 308: "This test is a basic check for using text-overflow." + RenderBlock {P} at (0,34) size 784x64 +RenderText {#text} at (0,0) size 481x18 + text run at (0,0) width 481: "Apply \"text-overflow:clip\" to inputs. The following input should be clipped:" +RenderBR {BR} at (481,0) size 0x18 +RenderTextControl {INPUT} at (2,20) size 123x19 [bgcolor=#FF] [border: (2px inset #00)] +RenderText {#text} at (127,20) size 4x18 + text run at (127,20) width 4: " " +RenderTextControl {INPUT} at (133,20) size 123x19 [bgcolor=#FF] [border: (2px inset #00)] + RenderDeprecatedFlexibleBox {DIV} at (3,3) size 117x13 +RenderBlock {DIV} at (0,1) size 8x11 +RenderBlock {DIV} at (8,0) size 96x13 +RenderBlock {DIV} at (104,1) size 13x11 +RenderText {#text} at (258,20) size 4x18 + text run at (258,20) width 4: " " +RenderTextControl {INPUT} at (264,20) size 123x19 [bgcolor=#FF] [border: (2px inset #00)] +RenderText {#text} at (389,20) size 4x18 + text run at (389,20) width 4: " " +RenderTextControl {INPUT} at (395,20) size 123x19 [bgcolor=#FF] [border: (2px inset #00)] + RenderDeprecatedFlexibleBox {DIV} at (3,3) size 117x13 +RenderBlock {DIV} at (0,1) size 8x11 +RenderBlock {DIV} at (8,0) size 96x13 +RenderBlock {DIV} at (104,1) size 13x11 +RenderText {#text} at (520,20) size 4x18 + text run at (520,20) width 4: " " +RenderTextControl {INPUT} at (526,20) size 123x19 [bgcolor=#FF] [border: (2px inset #00)] +RenderBR {BR} at (651,20) size 0x18 +RenderTextControl {INPUT} at (2,43) size 123x19 [bgcolor=#FF] [border: (2px inset #00)] +RenderText {#text} at (127,43) size 4x18 + text run at (127,43) width 4: " " +RenderTextControl {INPUT} at (133,43) size 123x19 [bgcolor=#FF] [border: (2px inset #00)] + RenderDeprecatedFlexibleBox {DIV} at (3,3) size 117x13 +RenderBlock {DIV} at (0,1) size 8x11 +RenderBlock {DIV} at (8,0) size 96x13 +RenderBlock {DIV} at (104,1) size 13x11 +RenderText {#text} at (258,43) size 4x18 + text run at (258,43) width 4: " " +RenderTextControl {INPUT} at (264,43) size 123x19 [bgcolor=#FF] [border: (2px inset #00)] +RenderText {#text} at (389,43) size 4x18 + text run at (389,43) width 4: " " +RenderTextControl {INPUT} at (395,43) size 123x19 [bgcolor=#FF] [border: (2px inset #00)] + RenderDeprecatedFlexibleBox {DIV} at (3,3) size 117x13 +RenderBlock {DIV} at (0,1) size 8x11 +RenderBlock {DIV} at (8,0) size 96x13 +
[webkit-changes] [133963] trunk/Source
Title: [133963] trunk/Source Revision 133963 Author jsb...@chromium.org Date 2012-11-08 15:47:43 -0800 (Thu, 08 Nov 2012) Log Message Expose snapshots in platform/leveldb wrapper API https://bugs.webkit.org/show_bug.cgi?id=100786 Reviewed by Tony Chang. Source/WebCore: Expose leveldb "snapshots" in the LevelDB API. A snapshot lets you observe the database as it was when the snapshot was taken. This can be used to implement parallel transactions, e.g. where a read transaction won't see updates made by a later write transaction. Tests: webkit_unit_tests --gtest_filter='LevelDBDatabaseTest.Transaction*' * platform/leveldb/LevelDBDatabase.cpp: (WebCore::LevelDBSnapshot::LevelDBSnapshot): New (but for now internal-only) wrapper type. (WebCore): (WebCore::LevelDBSnapshot::~LevelDBSnapshot): Release the leveldb::Snapshot. (WebCore::LevelDBDatabase::get): Optional snapshot argument, for use by transactions. (WebCore::LevelDBDatabase::createIterator): Ditto. * platform/leveldb/LevelDBDatabase.h: (leveldb): (WebCore): (LevelDBSnapshot): (LevelDBDatabase): * platform/leveldb/LevelDBTransaction.cpp: (WebCore::LevelDBTransaction::LevelDBTransaction): Initialize a snapshot. (WebCore::LevelDBTransaction::get): (WebCore::LevelDBTransaction::TransactionIterator::TransactionIterator): * platform/leveldb/LevelDBTransaction.h: (LevelDBTransaction): Source/WebKit/chromium: Add unit tests for transactions/snapshots. * tests/LevelDBTest.cpp: (WebCore::encodeString): Don't append to pre-sized vector. (WebCore::TEST): (WebCore): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/leveldb/LevelDBDatabase.cpp trunk/Source/WebCore/platform/leveldb/LevelDBDatabase.h trunk/Source/WebCore/platform/leveldb/LevelDBTransaction.cpp trunk/Source/WebCore/platform/leveldb/LevelDBTransaction.h trunk/Source/WebKit/chromium/ChangeLog trunk/Source/WebKit/chromium/tests/LevelDBTest.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (133962 => 133963) --- trunk/Source/WebCore/ChangeLog 2012-11-08 23:41:49 UTC (rev 133962) +++ trunk/Source/WebCore/ChangeLog 2012-11-08 23:47:43 UTC (rev 133963) @@ -1,3 +1,34 @@ +2012-11-08 Joshua Bell + +Expose snapshots in platform/leveldb wrapper API +https://bugs.webkit.org/show_bug.cgi?id=100786 + +Reviewed by Tony Chang. + +Expose leveldb "snapshots" in the LevelDB API. A snapshot lets you observe the database +as it was when the snapshot was taken. This can be used to implement parallel transactions, +e.g. where a read transaction won't see updates made by a later write transaction. + +Tests: webkit_unit_tests --gtest_filter='LevelDBDatabaseTest.Transaction*' + +* platform/leveldb/LevelDBDatabase.cpp: +(WebCore::LevelDBSnapshot::LevelDBSnapshot): New (but for now internal-only) wrapper type. +(WebCore): +(WebCore::LevelDBSnapshot::~LevelDBSnapshot): Release the leveldb::Snapshot. +(WebCore::LevelDBDatabase::get): Optional snapshot argument, for use by transactions. +(WebCore::LevelDBDatabase::createIterator): Ditto. +* platform/leveldb/LevelDBDatabase.h: +(leveldb): +(WebCore): +(LevelDBSnapshot): +(LevelDBDatabase): +* platform/leveldb/LevelDBTransaction.cpp: +(WebCore::LevelDBTransaction::LevelDBTransaction): Initialize a snapshot. +(WebCore::LevelDBTransaction::get): +(WebCore::LevelDBTransaction::TransactionIterator::TransactionIterator): +* platform/leveldb/LevelDBTransaction.h: +(LevelDBTransaction): + 2012-11-08 Brady Eidson Have NetworkProcess do the actual loading of subresources. Modified: trunk/Source/WebCore/platform/leveldb/LevelDBDatabase.cpp (133962 => 133963) --- trunk/Source/WebCore/platform/leveldb/LevelDBDatabase.cpp 2012-11-08 23:41:49 UTC (rev 133962) +++ trunk/Source/WebCore/platform/leveldb/LevelDBDatabase.cpp 2012-11-08 23:47:43 UTC (rev 133963) @@ -89,6 +89,17 @@ const LevelDBComparator* m_comparator; }; +LevelDBSnapshot::LevelDBSnapshot(LevelDBDatabase* db) +: m_db(db->m_db.get()) +, m_snapshot(m_db->GetSnapshot()) +{ +} + +LevelDBSnapshot::~LevelDBSnapshot() +{ +m_db->ReleaseSnapshot(m_snapshot); +} + LevelDBDatabase::LevelDBDatabase() { } @@ -187,11 +198,12 @@ return false; } -bool LevelDBDatabase::get(const LevelDBSlice& key, Vector& value) +bool LevelDBDatabase::get(const LevelDBSlice& key, Vector& value, const LevelDBSnapshot* snapshot) { std::string result; leveldb::ReadOptions readOptions; readOptions.verify_checksums = true; // FIXME: Disable this if the performance impact is too great. +readOptions.snapshot = snapshot ? snapshot->m_snapshot : 0; const leveldb::Status s = m_db->Get(readOptions, makeSlice(key), &result); if (s.ok()) { @@ -293,10 +305,11 @@ return makeLevelDBSlice(m_iterator->value()); } -PassOwnPtr LevelDBDatabase::createIterator() +Pas
[webkit-changes] [133960] trunk/LayoutTests
Title: [133960] trunk/LayoutTests Revision 133960 Author jsb...@chromium.org Date 2012-11-08 15:32:19 -0800 (Thu, 08 Nov 2012) Log Message [Chromium] Unreviewed gardening - rebaseline a couple of tests for lion. * platform/chromium-mac-lion/fast/css/text-overflow-ellipsis-text-align-center-expected.png: Added. * platform/chromium-mac-lion/fast/forms/basic-textareas-expected.png: Added. Modified Paths trunk/LayoutTests/ChangeLog Added Paths trunk/LayoutTests/platform/chromium-mac-lion/fast/css/text-overflow-ellipsis-text-align-center-expected.png trunk/LayoutTests/platform/chromium-mac-lion/fast/forms/basic-textareas-expected.png Diff Modified: trunk/LayoutTests/ChangeLog (133959 => 133960) --- trunk/LayoutTests/ChangeLog 2012-11-08 23:32:16 UTC (rev 133959) +++ trunk/LayoutTests/ChangeLog 2012-11-08 23:32:19 UTC (rev 133960) @@ -1,3 +1,10 @@ +2012-11-08 Joshua Bell + +[Chromium] Unreviewed gardening - rebaseline a couple of tests for lion. + +* platform/chromium-mac-lion/fast/css/text-overflow-ellipsis-text-align-center-expected.png: Added. +* platform/chromium-mac-lion/fast/forms/basic-textareas-expected.png: Added. + 2012-11-08 Huang Dongsung Coordinated Graphics: Remove an invisible TiledBackingStore of CoordinatedGraphicsLayer. Added: trunk/LayoutTests/platform/chromium-mac-lion/fast/css/text-overflow-ellipsis-text-align-center-expected.png (Binary files differ) Property changes on: trunk/LayoutTests/platform/chromium-mac-lion/fast/css/text-overflow-ellipsis-text-align-center-expected.png ___ Added: svn:mime-type Added: trunk/LayoutTests/platform/chromium-mac-lion/fast/forms/basic-textareas-expected.png (Binary files differ) Property changes on: trunk/LayoutTests/platform/chromium-mac-lion/fast/forms/basic-textareas-expected.png ___ Added: svn:mime-type ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [133954] trunk/Source/WebCore
Title: [133954] trunk/Source/WebCore Revision 133954 Author jsb...@chromium.org Date 2012-11-08 14:35:38 -0800 (Thu, 08 Nov 2012) Log Message Unreviewed, rolling out r133945. http://trac.webkit.org/changeset/133945 https://bugs.webkit.org/show_bug.cgi?id=101645 Numerous layout and unit test failures (Requested by jsbell|gardener on #webkit). Patch by Sheriff Bot on 2012-11-08 * bindings/scripts/CodeGeneratorV8.pm: (GenerateHeader): * bindings/scripts/test/V8/V8Float64Array.h: (WebCore::V8Float64Array::toNative): * bindings/scripts/test/V8/V8TestActiveDOMObject.h: (WebCore::V8TestActiveDOMObject::toNative): * bindings/scripts/test/V8/V8TestCustomNamedGetter.h: (WebCore::V8TestCustomNamedGetter::toNative): * bindings/scripts/test/V8/V8TestEventConstructor.h: (WebCore::V8TestEventConstructor::toNative): * bindings/scripts/test/V8/V8TestEventTarget.h: (WebCore::V8TestEventTarget::toNative): * bindings/scripts/test/V8/V8TestException.h: (WebCore::V8TestException::toNative): * bindings/scripts/test/V8/V8TestInterface.h: (WebCore::V8TestInterface::toNative): * bindings/scripts/test/V8/V8TestMediaQueryListListener.h: (WebCore::V8TestMediaQueryListListener::toNative): * bindings/scripts/test/V8/V8TestNamedConstructor.h: (WebCore::V8TestNamedConstructor::toNative): * bindings/scripts/test/V8/V8TestNode.h: (WebCore::V8TestNode::toNative): * bindings/scripts/test/V8/V8TestObj.h: (WebCore::V8TestObj::toNative): * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.h: (WebCore::V8TestSerializedScriptValueInterface::toNative): * bindings/v8/NPV8Object.cpp: (WebCore::v8ObjectToNPObject): (WebCore::npCreateV8ScriptObject): * bindings/v8/V8Collection.h: (WebCore::toNativeCollection): * bindings/v8/V8DOMWindowShell.cpp: (WebCore::setIsolatedWorldField): (WebCore::V8DOMWindowShell::enteredIsolatedWorldContext): * bindings/v8/V8DOMWrapper.cpp: (WebCore::V8DOMWrapper::isWrapperOfType): * bindings/v8/V8DOMWrapper.h: (WebCore::V8DOMWrapper::setDOMWrapper): (WebCore::V8DOMWrapper::clearDOMWrapper): * bindings/v8/WrapperTypeInfo.h: (WebCore::toNative): (WebCore::toWrapperTypeInfo): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/bindings/scripts/CodeGeneratorV8.pm trunk/Source/WebCore/bindings/scripts/test/V8/V8Float64Array.h trunk/Source/WebCore/bindings/scripts/test/V8/V8TestActiveDOMObject.h trunk/Source/WebCore/bindings/scripts/test/V8/V8TestCustomNamedGetter.h trunk/Source/WebCore/bindings/scripts/test/V8/V8TestEventConstructor.h trunk/Source/WebCore/bindings/scripts/test/V8/V8TestEventTarget.h trunk/Source/WebCore/bindings/scripts/test/V8/V8TestException.h trunk/Source/WebCore/bindings/scripts/test/V8/V8TestInterface.h trunk/Source/WebCore/bindings/scripts/test/V8/V8TestMediaQueryListListener.h trunk/Source/WebCore/bindings/scripts/test/V8/V8TestNamedConstructor.h trunk/Source/WebCore/bindings/scripts/test/V8/V8TestNode.h trunk/Source/WebCore/bindings/scripts/test/V8/V8TestObj.h trunk/Source/WebCore/bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.h trunk/Source/WebCore/bindings/v8/NPV8Object.cpp trunk/Source/WebCore/bindings/v8/V8Collection.h trunk/Source/WebCore/bindings/v8/V8DOMWindowShell.cpp trunk/Source/WebCore/bindings/v8/V8DOMWrapper.cpp trunk/Source/WebCore/bindings/v8/V8DOMWrapper.h trunk/Source/WebCore/bindings/v8/WrapperTypeInfo.h Diff Modified: trunk/Source/WebCore/ChangeLog (133953 => 133954) --- trunk/Source/WebCore/ChangeLog 2012-11-08 22:28:25 UTC (rev 133953) +++ trunk/Source/WebCore/ChangeLog 2012-11-08 22:35:38 UTC (rev 133954) @@ -1,3 +1,55 @@ +2012-11-08 Sheriff Bot + +Unreviewed, rolling out r133945. +http://trac.webkit.org/changeset/133945 +https://bugs.webkit.org/show_bug.cgi?id=101645 + +Numerous layout and unit test failures (Requested by + jsbell|gardener on #webkit). + +* bindings/scripts/CodeGeneratorV8.pm: +(GenerateHeader): +* bindings/scripts/test/V8/V8Float64Array.h: +(WebCore::V8Float64Array::toNative): +* bindings/scripts/test/V8/V8TestActiveDOMObject.h: +(WebCore::V8TestActiveDOMObject::toNative): +* bindings/scripts/test/V8/V8TestCustomNamedGetter.h: +(WebCore::V8TestCustomNamedGetter::toNative): +* bindings/scripts/test/V8/V8TestEventConstructor.h: +(WebCore::V8TestEventConstructor::toNative): +* bindings/scripts/test/V8/V8TestEventTarget.h: +(WebCore::V8TestEventTarget::toNative): +* bindings/scripts/test/V8/V8TestException.h: +(WebCore::V8TestException::toNative): +* bindings/scripts/test/V8/V8TestInterface.h: +(WebCore::V8TestInterface::toNative): +* bindings/scripts/test/V8/V8TestMediaQueryListListener.h: +(WebCore::V8TestMediaQueryListListener::toNative): +* bindings/scripts/test/V8/V8TestNamedConstructor.h: +(WebCore::V8TestNamedConstructor::toNative): +* bindings/scripts/test/V8/V8TestNode.h: +(WebC
[webkit-changes] [133940] trunk
Title: [133940] trunk Revision 133940 Author jsb...@chromium.org Date 2012-11-08 13:37:58 -0800 (Thu, 08 Nov 2012) Log Message Source/WebCore: IndexedDB: Remove unused error handling clauses when writing to transaction https://bugs.webkit.org/show_bug.cgi?id=100700 Reviewed by Tony Chang. Transactions are written into in-memory data structures. This can only fail if allocation fails, so "success" results are always returned. Change the return types to void, and delete all of the unreachable error handling code. No new tests - just refactoring/dead code removal. * Modules/indexeddb/IDBLevelDBBackingStore.cpp: (WebCore::putBool): Only write to transactions. (WebCore): (WebCore::putInt): Ditto. (WebCore::putVarInt): Ditto. (WebCore::putString): Ditto. (WebCore::putIDBKeyPath): Ditto. (WebCore::IDBLevelDBBackingStore::updateIDBDatabaseIntVersion): (WebCore::IDBLevelDBBackingStore::updateIDBDatabaseMetaData): (WebCore::deleteRange): Writes only to transaction, so can't fail. (WebCore::setMaxObjectStoreId): (WebCore::IDBLevelDBBackingStore::createObjectStore): (WebCore::getNewVersionNumber): (WebCore::IDBLevelDBBackingStore::putObjectStoreRecord): (WebCore::IDBLevelDBBackingStore::maybeUpdateKeyGeneratorCurrentNumber): (WebCore::setMaxIndexId): (WebCore::IDBLevelDBBackingStore::createIndex): (WebCore::IDBLevelDBBackingStore::putIndexDataForRecord): * platform/leveldb/LevelDBTransaction.cpp: (WebCore::LevelDBTransaction::set): Return type is void. (WebCore::LevelDBTransaction::put): Ditto. (WebCore::LevelDBTransaction::remove): Ditto. * platform/leveldb/LevelDBTransaction.h: (LevelDBTransaction): LayoutTests: [Chromium] Unreviewed gardening. * platform/chromium/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/chromium/TestExpectations trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/IDBBackingStore.cpp trunk/Source/WebCore/platform/leveldb/LevelDBTransaction.cpp trunk/Source/WebCore/platform/leveldb/LevelDBTransaction.h Diff Modified: trunk/LayoutTests/ChangeLog (133939 => 133940) --- trunk/LayoutTests/ChangeLog 2012-11-08 21:36:32 UTC (rev 133939) +++ trunk/LayoutTests/ChangeLog 2012-11-08 21:37:58 UTC (rev 133940) @@ -1,3 +1,9 @@ +2012-11-08 Joshua Bell + +[Chromium] Unreviewed gardening. + +* platform/chromium/TestExpectations: + 2012-11-08 Emil A Eklund Unreviewed chromium rebaselines. Modified: trunk/LayoutTests/platform/chromium/TestExpectations (133939 => 133940) --- trunk/LayoutTests/platform/chromium/TestExpectations 2012-11-08 21:36:32 UTC (rev 133939) +++ trunk/LayoutTests/platform/chromium/TestExpectations 2012-11-08 21:37:58 UTC (rev 133940) @@ -4190,11 +4190,11 @@ webkit.org/b/101547 fast/repaint/delete-into-nested-block.html [ ImageOnlyFailure ] webkit.org/b/101547 fast/repaint/inline-outline-repaint.html [ ImageOnlyFailure ] # The following test has prior expectations which were disabled. Re-enable when removing this: -webkit.org/b/101547 fast/repaint/japanese-rl-selection-clear.html [ ImageOnlyFailure ] +webkit.org/b/101547 fast/repaint/japanese-rl-selection-clear.html [ ImageOnlyFailure Failure ] # The following test has prior expectations which were disabled. Re-enable when removing this: -webkit.org/b/101547 fast/repaint/japanese-rl-selection-repaint-in-regions.html [ ImageOnlyFailure ] +webkit.org/b/101547 fast/repaint/japanese-rl-selection-repaint-in-regions.html [ ImageOnlyFailure Failure ] # The following test has prior expectations which were disabled. Re-enable when removing this: -webkit.org/b/101547 fast/repaint/japanese-rl-selection-repaint.html [ ImageOnlyFailure ] +webkit.org/b/101547 fast/repaint/japanese-rl-selection-repaint.html [ ImageOnlyFailure Failure ] webkit.org/b/101547 fast/repaint/no-caret-repaint-in-non-content-editable-element.html [ ImageOnlyFailure ] webkit.org/b/101547 fast/repaint/repaint-across-writing-mode-boundary.html [ ImageOnlyFailure ] webkit.org/b/101547 fast/repaint/selection-after-delete.html [ ImageOnlyFailure ] Modified: trunk/Source/WebCore/ChangeLog (133939 => 133940) --- trunk/Source/WebCore/ChangeLog 2012-11-08 21:36:32 UTC (rev 133939) +++ trunk/Source/WebCore/ChangeLog 2012-11-08 21:37:58 UTC (rev 133940) @@ -1,3 +1,41 @@ +2012-11-08 Joshua Bell + +IndexedDB: Remove unused error handling clauses when writing to transaction +https://bugs.webkit.org/show_bug.cgi?id=100700 + +Reviewed by Tony Chang. + +Transactions are written into in-memory data structures. This can only fail if allocation +fails, so "success" results are always returned. Change the return types to void, and delete +all of the unreachable error handling code. + +No new tests - just refactoring/dead code removal. + +* Modules/indexeddb/IDBLevelDBBackingStore.cpp: +(WebCore::putBool): Only write to transactions. +(WebCore): +(WebCore::putInt): Ditto. +(WebC
[webkit-changes] [133922] trunk/LayoutTests
Title: [133922] trunk/LayoutTests Revision 133922 Author jsb...@chromium.org Date 2012-11-08 11:13:57 -0800 (Thu, 08 Nov 2012) Log Message [Chromium] Unreviewed gardening - widen flaky expectation to include crash * platform/chromium/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/chromium/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (133921 => 133922) --- trunk/LayoutTests/ChangeLog 2012-11-08 19:06:02 UTC (rev 133921) +++ trunk/LayoutTests/ChangeLog 2012-11-08 19:13:57 UTC (rev 133922) @@ -1,3 +1,9 @@ +2012-11-08 Joshua Bell + +[Chromium] Unreviewed gardening - widen flaky expectation to include crash + +* platform/chromium/TestExpectations: + 2012-11-08 Yael Aharon Unreviewed. More gardening after r133898. Modified: trunk/LayoutTests/platform/chromium/TestExpectations (133921 => 133922) --- trunk/LayoutTests/platform/chromium/TestExpectations 2012-11-08 19:06:02 UTC (rev 133921) +++ trunk/LayoutTests/platform/chromium/TestExpectations 2012-11-08 19:13:57 UTC (rev 133922) @@ -3096,7 +3096,7 @@ webkit.org/b/69210 [ SnowLeopard ] fast/inline/continuation-outlines-with-layers-2.html [ Failure ] webkit.org/b/69210 [ Mac ] fast/inline/continuation-outlines-with-layers.html [ Failure ] -webkit.org/b/79013 http/tests/workers/terminate-during-sync-operation.html [ Pass Timeout ] +webkit.org/b/79013 http/tests/workers/terminate-during-sync-operation.html [ Pass Timeout Crash ] crbug.com/115055 fast/js/cyclic-prototypes.html [ Failure ] ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [133919] trunk/LayoutTests
Title: [133919] trunk/LayoutTests Revision 133919 Author jsb...@chromium.org Date 2012-11-08 10:54:54 -0800 (Thu, 08 Nov 2012) Log Message [Chromium] Unreviewed gardening - fix lint failures in expectations file. * platform/chromium/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/chromium/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (133918 => 133919) --- trunk/LayoutTests/ChangeLog 2012-11-08 18:47:34 UTC (rev 133918) +++ trunk/LayoutTests/ChangeLog 2012-11-08 18:54:54 UTC (rev 133919) @@ -1,5 +1,11 @@ 2012-11-08 Joshua Bell +[Chromium] Unreviewed gardening - fix lint failures in expectations file. + +* platform/chromium/TestExpectations: + +2012-11-08 Joshua Bell + Multiple Layout Tests (e.g. fast/repaint/japanese-rl-selection-clear.html) is failing after r133840. https://bugs.webkit.org/show_bug.cgi?id=101547 Modified: trunk/LayoutTests/platform/chromium/TestExpectations (133918 => 133919) --- trunk/LayoutTests/platform/chromium/TestExpectations 2012-11-08 18:47:34 UTC (rev 133918) +++ trunk/LayoutTests/platform/chromium/TestExpectations 2012-11-08 18:54:54 UTC (rev 133919) @@ -2878,9 +2878,9 @@ webkit.org/b/65009 [ Mac ] scrollbars/scrollbar-drag-thumb-with-large-content.html [ Failure ] -webkit.org/b/65124 [ Android Linux Win ] fast/repaint/japanese-rl-selection-clear.html [ Failure ] -webkit.org/b/65124 [ Win ] fast/repaint/japanese-rl-selection-repaint.html [ Failure ] -webkit.org/b/65124 [ Android Linux Win ] fast/repaint/japanese-rl-selection-repaint-in-regions.html [ Failure ] +#webkit.org/b/65124 [ Android Linux Win ] fast/repaint/japanese-rl-selection-clear.html [ Failure ] +#webkit.org/b/65124 [ Win ] fast/repaint/japanese-rl-selection-repaint.html [ Failure ] +#webkit.org/b/65124 [ Android Linux Win ] fast/repaint/japanese-rl-selection-repaint-in-regions.html [ Failure ] webkit.org/b/65124 [ Android Linux Win ] fast/repaint/line-flow-with-floats-in-regions.html [ Failure ] webkit.org/b/65199 [ Android Linux SnowLeopard Win ] fast/writing-mode/broken-ideograph-small-caps.html [ Failure ] @@ -3442,7 +3442,7 @@ webkit.org/b/86909 [ Win ] http/tests/inspector/network/network-content-replacement-xhr.html [ Pass Timeout ] webkit.org/b/86909 [ Win Debug ] http/tests/security/referrer-policy-redirect-link.html [ Pass Timeout ] webkit.org/b/86909 [ Win Debug ] platform/chromium/virtual/gpu/fast/canvas/imagedata-contains-uint8clampedarray.html [ Pass Timeout ] -webkit.org/b/86909 [ Win ] platform/chromium/virtual/gpu/fast/canvas/webgl/webgl-composite-modes-repaint.html [ Pass Slow ] +#webkit.org/b/86909 [ Win ] platform/chromium/virtual/gpu/fast/canvas/webgl/webgl-composite-modes-repaint.html [ Pass Slow ] # Ref-tests can't have platform specific results. webkit.org/b/87175 fast/regions/floats-basic-in-variable-width-regions.html @@ -4133,9 +4133,9 @@ webkit.org/b/99749 [ MountainLion ] svg/custom/foreign-object-skew.svg [ ImageOnlyFailure ] webkit.org/b/99749 [ MountainLion ] svg/custom/getscreenctm-in-scrollable-div-area-nested.xhtml [ ImageOnlyFailure ] webkit.org/b/99749 [ MountainLion ] svg/hixie/perf/007.xml [ ImageOnlyFailure ] -webkit.org/b/99749 [ MountainLion ] svg/custom/foreignObject-crash-on-hover.xml [ ImageOnlyFailure ] -webkit.org/b/99749 [ MountainLion ] svg/custom/hit-test-unclosed-subpaths.svg [ ImageOnlyFailure ] -webkit.org/b/99749 [ MountainLion ] svg/custom/hit-test-with-br.xhtml [ ImageOnlyFailure ] +#webkit.org/b/99749 [ MountainLion ] svg/custom/foreignObject-crash-on-hover.xml [ ImageOnlyFailure ] +#webkit.org/b/99749 [ MountainLion ] svg/custom/hit-test-unclosed-subpaths.svg [ ImageOnlyFailure ] +#webkit.org/b/99749 [ MountainLion ] svg/custom/hit-test-with-br.xhtml [ ImageOnlyFailure ] webkit.org/b/99749 [ MountainLion ] svg/custom/use-clipped-hit.svg [ ImageOnlyFailure ] webkit.org/b/100142 css3/filters/effect-reference-hw.html [ Failure ImageOnlyFailure ] @@ -4180,25 +4180,33 @@ webkit.org/b/101618 [ Win7 Debug ] http/tests/inspector/indexeddb/database-data.html [ Crash ] +# Failures following Chromium r166632: +# The following test has prior expectations which were disabled. Re-enable when removing this: crbug.com/160075 fast/canvas/webgl/webgl-composite-modes-repaint.html [ ImageOnlyFailure ] crbug.com/160075 fast/canvas/webgl/webgl-composite-modes.html [ ImageOnlyFailure ] crbug.com/160075 platform/chromium/virtual/gpu/fast/canvas/webgl/webgl-composite-modes-repaint.html [ ImageOnlyFailure ] crbug.com/160075 platform/chromium/virtual/gpu/fast/canvas/webgl/webgl-composite-modes.html [ ImageOnlyFailure ] # Failures following r133840: -webkit.org/b/101547 fast/repaint/selection-after-delete.html [ ImageOnlyFailure ] +webkit.org/b/101547 fast/repaint/4774354.html [ ImageOnlyFailure ] +webkit.org/b/101547 fast/repaint/caret-outside-block.html [ ImageOnlyFailure ] webkit.org/b/101547 fast/repaint/delete-into-nested-bloc
[webkit-changes] [133917] trunk/LayoutTests
Title: [133917] trunk/LayoutTests Revision 133917 Author jsb...@chromium.org Date 2012-11-08 10:37:03 -0800 (Thu, 08 Nov 2012) Log Message Multiple Layout Tests (e.g. fast/repaint/japanese-rl-selection-clear.html) is failing after r133840. https://bugs.webkit.org/show_bug.cgi?id=101547 [Chromium] Unreviewed gardening - test expectations update. * platform/chromium/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/chromium/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (133916 => 133917) --- trunk/LayoutTests/ChangeLog 2012-11-08 18:33:22 UTC (rev 133916) +++ trunk/LayoutTests/ChangeLog 2012-11-08 18:37:03 UTC (rev 133917) @@ -1,5 +1,14 @@ 2012-11-08 Joshua Bell +Multiple Layout Tests (e.g. fast/repaint/japanese-rl-selection-clear.html) is failing after r133840. +https://bugs.webkit.org/show_bug.cgi?id=101547 + +[Chromium] Unreviewed gardening - test expectations update. + +* platform/chromium/TestExpectations: + +2012-11-08 Joshua Bell + [Chromium] Test expectations for failing image tests following Chromium r166632. Unreviewed gardening. Modified: trunk/LayoutTests/platform/chromium/TestExpectations (133916 => 133917) --- trunk/LayoutTests/platform/chromium/TestExpectations 2012-11-08 18:33:22 UTC (rev 133916) +++ trunk/LayoutTests/platform/chromium/TestExpectations 2012-11-08 18:37:03 UTC (rev 133917) @@ -4184,3 +4184,22 @@ crbug.com/160075 fast/canvas/webgl/webgl-composite-modes.html [ ImageOnlyFailure ] crbug.com/160075 platform/chromium/virtual/gpu/fast/canvas/webgl/webgl-composite-modes-repaint.html [ ImageOnlyFailure ] crbug.com/160075 platform/chromium/virtual/gpu/fast/canvas/webgl/webgl-composite-modes.html [ ImageOnlyFailure ] + +# Failures following r133840: +webkit.org/b/101547 fast/repaint/selection-after-delete.html [ ImageOnlyFailure ] +webkit.org/b/101547 fast/repaint/delete-into-nested-block.html [ ImageOnlyFailure ] +webkit.org/b/101547 svg/custom/hit-test-unclosed-subpaths.svg [ ImageOnlyFailure ] +webkit.org/b/101547 fast/repaint/no-caret-repaint-in-non-content-editable-element.html [ ImageOnlyFailure ] +webkit.org/b/101547 fast/repaint/caret-outside-block.html [ ImageOnlyFailure ] +webkit.org/b/101547 fast/repaint/4774354.html [ ImageOnlyFailure ] +webkit.org/b/101547 fast/repaint/repaint-across-writing-mode-boundary.html [ ImageOnlyFailure ] +webkit.org/b/101547 fast/repaint/japanese-rl-selection-clear.html [ ImageOnlyFailure ] +webkit.org/b/101547 fast/repaint/selection-rl.html [ ImageOnlyFailure ] +webkit.org/b/101547 fast/repaint/japanese-rl-selection-repaint.html [ ImageOnlyFailure ] +webkit.org/b/101547 fast/repaint/inline-outline-repaint.html [ ImageOnlyFailure ] +webkit.org/b/101547 fast/repaint/japanese-rl-selection-repaint-in-regions.html [ ImageOnlyFailure ] +webkit.org/b/101547 svg/custom/foreignObject-crash-on-hover.xml [ ImageOnlyFailure ] +webkit.org/b/101547 svg/custom/hit-test-with-br.xhtml [ ImageOnlyFailure ] +webkit.org/b/101576 [ Debug ] editing/selection/focus_editable_html.html [ Crash ] +webkit.org/b/101576 [ Debug ] editing/selection/click-after-nested-block.html [ Crash ] +webkit.org/b/101576 [ Debug ] fast/events/autoscroll.html [ Crash ] ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [133913] trunk/LayoutTests
Title: [133913] trunk/LayoutTests Revision 133913 Author jsb...@chromium.org Date 2012-11-08 10:15:54 -0800 (Thu, 08 Nov 2012) Log Message [Chromium] Test expectations for failing image tests following Chromium r166632. Unreviewed gardening. * platform/chromium/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/chromium/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (133912 => 133913) --- trunk/LayoutTests/ChangeLog 2012-11-08 17:51:01 UTC (rev 133912) +++ trunk/LayoutTests/ChangeLog 2012-11-08 18:15:54 UTC (rev 133913) @@ -1,5 +1,13 @@ 2012-11-08 Joshua Bell +[Chromium] Test expectations for failing image tests following Chromium r166632. + +Unreviewed gardening. + +* platform/chromium/TestExpectations: + +2012-11-08 Joshua Bell + [Chromium] Widen flaky crash expectation fast/workers/worker-multi-startup.html to include linux. Unreviewed gardening. Modified: trunk/LayoutTests/platform/chromium/TestExpectations (133912 => 133913) --- trunk/LayoutTests/platform/chromium/TestExpectations 2012-11-08 17:51:01 UTC (rev 133912) +++ trunk/LayoutTests/platform/chromium/TestExpectations 2012-11-08 18:15:54 UTC (rev 133913) @@ -4179,3 +4179,8 @@ webkit.org/b/101539 [ Linux Win ] editing/execCommand/switch-list-type-with-orphaned-li.html [ Failure ] webkit.org/b/101618 [ Win7 Debug ] http/tests/inspector/indexeddb/database-data.html [ Crash ] + +crbug.com/160075 fast/canvas/webgl/webgl-composite-modes-repaint.html [ ImageOnlyFailure ] +crbug.com/160075 fast/canvas/webgl/webgl-composite-modes.html [ ImageOnlyFailure ] +crbug.com/160075 platform/chromium/virtual/gpu/fast/canvas/webgl/webgl-composite-modes-repaint.html [ ImageOnlyFailure ] +crbug.com/160075 platform/chromium/virtual/gpu/fast/canvas/webgl/webgl-composite-modes.html [ ImageOnlyFailure ] ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [133912] trunk/LayoutTests
Title: [133912] trunk/LayoutTests Revision 133912 Author jsb...@chromium.org Date 2012-11-08 09:51:01 -0800 (Thu, 08 Nov 2012) Log Message [Chromium] Widen flaky crash expectation fast/workers/worker-multi-startup.html to include linux. Unreviewed gardening. * platform/chromium/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/chromium/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (133911 => 133912) --- trunk/LayoutTests/ChangeLog 2012-11-08 17:44:51 UTC (rev 133911) +++ trunk/LayoutTests/ChangeLog 2012-11-08 17:51:01 UTC (rev 133912) @@ -1,5 +1,13 @@ 2012-11-08 Joshua Bell +[Chromium] Widen flaky crash expectation fast/workers/worker-multi-startup.html to include linux. + +Unreviewed gardening. + +* platform/chromium/TestExpectations: + +2012-11-08 Joshua Bell + [Chromium] http/tests/inspector/indexeddb/database-data.html ASSERT on Win7 following r133855 https://bugs.webkit.org/show_bug.cgi?id=101618 Modified: trunk/LayoutTests/platform/chromium/TestExpectations (133911 => 133912) --- trunk/LayoutTests/platform/chromium/TestExpectations 2012-11-08 17:44:51 UTC (rev 133911) +++ trunk/LayoutTests/platform/chromium/TestExpectations 2012-11-08 17:51:01 UTC (rev 133912) @@ -3118,7 +3118,7 @@ webkit.org/b/78684 fast/block/basic/fieldset-stretch-to-legend.html [ Failure ] webkit.org/b/78684 fast/borders/fieldsetBorderRadius.html [ Failure ] -webkit.org/b/80498 [ Win ] fast/workers/worker-multi-startup.html [ Crash Pass ] +webkit.org/b/80498 [ Linux Win ] fast/workers/worker-multi-startup.html [ Crash Pass ] webkit.org/b/91946 platform/chromium/fast/events/rtl-scrollbar.html [ Failure Pass ] ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [133911] trunk/LayoutTests
Title: [133911] trunk/LayoutTests Revision 133911 Author jsb...@chromium.org Date 2012-11-08 09:44:51 -0800 (Thu, 08 Nov 2012) Log Message [Chromium] http/tests/inspector/indexeddb/database-data.html ASSERT on Win7 following r133855 https://bugs.webkit.org/show_bug.cgi?id=101618 Unreviewed gardening. * platform/chromium/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/chromium/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (133910 => 133911) --- trunk/LayoutTests/ChangeLog 2012-11-08 17:43:20 UTC (rev 133910) +++ trunk/LayoutTests/ChangeLog 2012-11-08 17:44:51 UTC (rev 133911) @@ -1,3 +1,12 @@ +2012-11-08 Joshua Bell + +[Chromium] http/tests/inspector/indexeddb/database-data.html ASSERT on Win7 following r133855 +https://bugs.webkit.org/show_bug.cgi?id=101618 + +Unreviewed gardening. + +* platform/chromium/TestExpectations: + 2012-11-08 Emil A Eklund Unreviewed chromium mac rebaseline for r101497. Modified: trunk/LayoutTests/platform/chromium/TestExpectations (133910 => 133911) --- trunk/LayoutTests/platform/chromium/TestExpectations 2012-11-08 17:43:20 UTC (rev 133910) +++ trunk/LayoutTests/platform/chromium/TestExpectations 2012-11-08 17:44:51 UTC (rev 133911) @@ -4177,3 +4177,5 @@ webkit.org/b/101408 platform/chromium/fast/forms/calendar-picker/calendar-picker-key-operations.html [ Failure Pass ] webkit.org/b/101539 [ Linux Win ] editing/execCommand/switch-list-type-with-orphaned-li.html [ Failure ] + +webkit.org/b/101618 [ Win7 Debug ] http/tests/inspector/indexeddb/database-data.html [ Crash ] ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [133909] trunk/Source/WebCore
Title: [133909] trunk/Source/WebCore Revision 133909 Author jsb...@chromium.org Date 2012-11-08 09:35:11 -0800 (Thu, 08 Nov 2012) Log Message Unreviewed, rolling out r133892. http://trac.webkit.org/changeset/133892 https://bugs.webkit.org/show_bug.cgi?id=101617 Compile failures on mac, android, linux (Requested by jsbell|gardener on #webkit). Patch by Sheriff Bot on 2012-11-08 * bindings/v8/DOMDataStore.cpp: (WebCore::DOMDataStore::current): * bindings/v8/DOMWrapperWorld.h: (WebCore::DOMWrapperWorld::domDataStore): (WebCore::DOMWrapperWorld::DOMWrapperWorld): * bindings/v8/V8DOMWrapper.h: (WebCore::V8DOMWrapper::getCachedWrapper): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/bindings/v8/DOMDataStore.cpp trunk/Source/WebCore/bindings/v8/DOMWrapperWorld.h trunk/Source/WebCore/bindings/v8/V8DOMWrapper.h Diff Modified: trunk/Source/WebCore/ChangeLog (133908 => 133909) --- trunk/Source/WebCore/ChangeLog 2012-11-08 17:28:38 UTC (rev 133908) +++ trunk/Source/WebCore/ChangeLog 2012-11-08 17:35:11 UTC (rev 133909) @@ -1,3 +1,20 @@ +2012-11-08 Sheriff Bot + +Unreviewed, rolling out r133892. +http://trac.webkit.org/changeset/133892 +https://bugs.webkit.org/show_bug.cgi?id=101617 + +Compile failures on mac, android, linux (Requested by + jsbell|gardener on #webkit). + +* bindings/v8/DOMDataStore.cpp: +(WebCore::DOMDataStore::current): +* bindings/v8/DOMWrapperWorld.h: +(WebCore::DOMWrapperWorld::domDataStore): +(WebCore::DOMWrapperWorld::DOMWrapperWorld): +* bindings/v8/V8DOMWrapper.h: +(WebCore::V8DOMWrapper::getCachedWrapper): + 2012-11-08 Andrey Adaikin Web Inspector: [Canvas] UI iterations: image on the top, auto replay Modified: trunk/Source/WebCore/bindings/v8/DOMDataStore.cpp (133908 => 133909) --- trunk/Source/WebCore/bindings/v8/DOMDataStore.cpp 2012-11-08 17:28:38 UTC (rev 133908) +++ trunk/Source/WebCore/bindings/v8/DOMDataStore.cpp 2012-11-08 17:35:11 UTC (rev 133909) @@ -54,14 +54,14 @@ DOMDataStore* DOMDataStore::current(v8::Isolate* isolate) { -DEFINE_STATIC_LOCAL(DOMDataStore, mainWorldDOMDataStore, (MainWorld)); +DEFINE_STATIC_LOCAL(DOMDataStore, defaultStore, (MainWorld)); V8PerIsolateData* data = "" ? V8PerIsolateData::from(isolate) : V8PerIsolateData::current(); if (UNLIKELY(!!data->domDataStore())) return data->domDataStore(); V8DOMWindowShell* context = V8DOMWindowShell::getEntered(); if (UNLIKELY(!!context)) -return context->world()->isolatedWorldDOMDataStore(); -return &mainWorldDOMDataStore; +return context->world()->domDataStore(); +return &defaultStore; } void DOMDataStore::reportMemoryUsage(MemoryObjectInfo* memoryObjectInfo) const Modified: trunk/Source/WebCore/bindings/v8/DOMWrapperWorld.h (133908 => 133909) --- trunk/Source/WebCore/bindings/v8/DOMWrapperWorld.h 2012-11-08 17:28:38 UTC (rev 133908) +++ trunk/Source/WebCore/bindings/v8/DOMWrapperWorld.h 2012-11-08 17:35:11 UTC (rev 133909) @@ -78,9 +78,9 @@ bool isIsolatedWorld() { return isIsolatedWorldId(m_worldId); } int worldId() const { return m_worldId; } int extensionGroup() const { return m_extensionGroup; } -DOMDataStore* isolatedWorldDOMDataStore() const +DOMDataStore* domDataStore() const { -ASSERT(isIsolatedWorld()); +ASSERT(m_worldId != uninitializedWorldId); return m_domDataStore.get(); } void deref() @@ -98,7 +98,7 @@ : m_worldId(worldId) , m_extensionGroup(extensionGroup) { -if (isIsolatedWorld()) +if (worldId != uninitializedWorldId) m_domDataStore = adoptPtr(new DOMDataStore(DOMDataStore::IsolatedWorld)); } Modified: trunk/Source/WebCore/bindings/v8/V8DOMWrapper.h (133908 => 133909) --- trunk/Source/WebCore/bindings/v8/V8DOMWrapper.h 2012-11-08 17:28:38 UTC (rev 133908) +++ trunk/Source/WebCore/bindings/v8/V8DOMWrapper.h 2012-11-08 17:35:11 UTC (rev 133909) @@ -122,7 +122,7 @@ if (LIKELY(!context)) return node->wrapper(); -return context->world()->isolatedWorldDOMDataStore()->get(node); +return context->world()->domDataStore()->get(node); } private: ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [133809] trunk/LayoutTests
Title: [133809] trunk/LayoutTests Revision 133809 Author jsb...@chromium.org Date 2012-11-07 15:01:35 -0800 (Wed, 07 Nov 2012) Log Message [Chromium] Unreviewed gardening. * platform/chromium/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/chromium/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (133808 => 133809) --- trunk/LayoutTests/ChangeLog 2012-11-07 22:48:24 UTC (rev 133808) +++ trunk/LayoutTests/ChangeLog 2012-11-07 23:01:35 UTC (rev 133809) @@ -1,3 +1,9 @@ +2012-11-07 Joshua Bell + +[Chromium] Unreviewed gardening. + +* platform/chromium/TestExpectations: + 2012-11-07 Beth Dakin https://bugs.webkit.org/show_bug.cgi?id=101303 Modified: trunk/LayoutTests/platform/chromium/TestExpectations (133808 => 133809) --- trunk/LayoutTests/platform/chromium/TestExpectations 2012-11-07 22:48:24 UTC (rev 133808) +++ trunk/LayoutTests/platform/chromium/TestExpectations 2012-11-07 23:01:35 UTC (rev 133809) @@ -3317,7 +3317,7 @@ crbug.com/121442 [ Linux Debug ] plugins/iframe-shims.html [ Crash ] crbug.com/121442 [ Linux Release ] plugins/iframe-shims.html [ Crash Pass ] -webkit.org/b/83219 [ Lion MountainLion ] fonts/cursive.html [ Failure Pass ] +webkit.org/b/83219 [ Lion MountainLion ] fonts/cursive.html [ Failure ImageOnlyFailure Pass ] webkit.org/b/83324 [ Win Debug ] fast/js/cross-global-object-inline-global-var.html [ Failure Pass ] crbug.com/122462 [ Linux Win ] http/tests/inspector/inspect-element.html [ Failure Slow ] ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [133776] trunk
Title: [133776] trunk Revision 133776 Author jsb...@chromium.org Date 2012-11-07 10:26:18 -0800 (Wed, 07 Nov 2012) Log Message IndexedDB: Assertion failure with open() within upgradeneeded https://bugs.webkit.org/show_bug.cgi?id=96947 Reviewed by Dimitri Glazkov. Source/WebCore: Postpone creation of the "pending second half open" until the version change transaction has started. Test: storage/indexeddb/unblocked-version-changes.html * Modules/indexeddb/IDBDatabaseBackendImpl.cpp: (WebCore::IDBDatabaseBackendImpl::setIntVersionInternal): (WebCore::IDBDatabaseBackendImpl::runIntVersionChangeTransaction): * Modules/indexeddb/IDBDatabaseBackendImpl.h: (IDBDatabaseBackendImpl): * Modules/indexeddb/IDBDatabaseCallbacks.h: LayoutTests: Exercise the code path leading to the assert by having a second version change transaction unblocked by the first's connection closing. Includes a known failure due to metadata snapshot timing. * storage/indexeddb/resources/unblocked-version-changes.js: Added. (test): (openConnection): (onUpgradeNeeded): (onError): (onUpgradeNeeded2): (onSuccess): * storage/indexeddb/unblocked-version-changes-expected.txt: Added. * storage/indexeddb/unblocked-version-changes.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/indexeddb/IDBDatabaseBackendImpl.cpp trunk/Source/WebCore/Modules/indexeddb/IDBDatabaseBackendImpl.h trunk/Source/WebCore/Modules/indexeddb/IDBDatabaseCallbacks.h Added Paths trunk/LayoutTests/storage/indexeddb/resources/unblocked-version-changes.js trunk/LayoutTests/storage/indexeddb/unblocked-version-changes-expected.txt trunk/LayoutTests/storage/indexeddb/unblocked-version-changes.html Diff Modified: trunk/LayoutTests/ChangeLog (133775 => 133776) --- trunk/LayoutTests/ChangeLog 2012-11-07 18:20:53 UTC (rev 133775) +++ trunk/LayoutTests/ChangeLog 2012-11-07 18:26:18 UTC (rev 133776) @@ -1,3 +1,24 @@ +2012-11-07 Joshua Bell + +IndexedDB: Assertion failure with open() within upgradeneeded +https://bugs.webkit.org/show_bug.cgi?id=96947 + +Reviewed by Dimitri Glazkov. + +Exercise the code path leading to the assert by having a second version change transaction +unblocked by the first's connection closing. Includes a known failure due to metadata +snapshot timing. + +* storage/indexeddb/resources/unblocked-version-changes.js: Added. +(test): +(openConnection): +(onUpgradeNeeded): +(onError): +(onUpgradeNeeded2): +(onSuccess): +* storage/indexeddb/unblocked-version-changes-expected.txt: Added. +* storage/indexeddb/unblocked-version-changes.html: Added. + 2012-11-06 Simon Fraser Fix failing platform/mac/tiled-drawing on Lion. Added: trunk/LayoutTests/storage/indexeddb/resources/unblocked-version-changes.js (0 => 133776) --- trunk/LayoutTests/storage/indexeddb/resources/unblocked-version-changes.js (rev 0) +++ trunk/LayoutTests/storage/indexeddb/resources/unblocked-version-changes.js 2012-11-07 18:26:18 UTC (rev 133776) @@ -0,0 +1,62 @@ +if (this.importScripts) { +importScripts('../../../fast/js/resources/js-test-pre.js'); +importScripts('shared.js'); +} + +description("Ensure that metadata remains correct when an aborted version change is followed by another. "); + +function test() { +removeVendorPrefixes(); +setDBNameFromPath(); +request = evalAndLog("indexedDB.deleteDatabase(dbname)"); +request._onblocked_ = unexpectedBlockedCallback; +request._onerror_ = unexpectedErrorCallback; +request._onsuccess_ = openConnection; +} + +function openConnection() +{ +preamble(); +evalAndLog("request = indexedDB.open(dbname, 2)"); +request._onblocked_ = unexpectedBlockedCallback; +request._onsuccess_ = unexpectedSuccessCallback; +request._onupgradeneeded_ = onUpgradeNeeded; +request._onerror_ = onError; +} + +function onUpgradeNeeded(evt) +{ +preamble(evt); +evalAndLog("db = request.result"); +shouldBe("db.version", "2"); + +evalAndLog("request = indexedDB.open(dbname, 3)"); +request._onerror_ = unexpectedErrorCallback; +request._onupgradeneeded_ = onUpgradeNeeded2; +request._onsuccess_ = onSuccess; + +evalAndLog("db.close()"); +} + +function onError(evt) +{ +preamble(evt); +shouldBe("db.version", "0"); +} + +function onUpgradeNeeded2(evt) +{ +preamble(evt); +evalAndLog("db = request.result"); +shouldBe("db.version", "3"); +} + +function onSuccess(evt) +{ +preamble(evt); +evalAndLog("db = request.result"); +shouldBe("db.version", "3"); +finishJSTest(); +} + +test(); \ No newline at end of file Added: trunk/LayoutTests/storage/indexeddb/unblocked-version-changes-expected.txt (0 => 133776) --- trunk/LayoutTests/storage/indexeddb/unblocked-version-changes-expected.txt (rev 0) +++ trunk/LayoutTest
[webkit-changes] [133766] trunk/LayoutTests
Title: [133766] trunk/LayoutTests Revision 133766 Author jsb...@chromium.org Date 2012-11-07 09:14:47 -0800 (Wed, 07 Nov 2012) Log Message [Chromium] Unreviewed gardening. Rebaseline the tests added in http://trac.webkit.org/changeset/133686 - part deux. * platform/chromium-win/fast/backgrounds/transformed-body-background-expected.png: Added. * platform/chromium-win/fast/backgrounds/transformed-body-html-background-expected.png: Added. * platform/chromium-win/fast/backgrounds/transformed-html-body-background-expected.png: Added. Modified Paths trunk/LayoutTests/ChangeLog Added Paths trunk/LayoutTests/platform/chromium-win/fast/backgrounds/transformed-body-background-expected.png trunk/LayoutTests/platform/chromium-win/fast/backgrounds/transformed-body-html-background-expected.png trunk/LayoutTests/platform/chromium-win/fast/backgrounds/transformed-html-body-background-expected.png Diff Modified: trunk/LayoutTests/ChangeLog (133765 => 133766) --- trunk/LayoutTests/ChangeLog 2012-11-07 17:12:17 UTC (rev 133765) +++ trunk/LayoutTests/ChangeLog 2012-11-07 17:14:47 UTC (rev 133766) @@ -1,3 +1,12 @@ +2012-11-07 Joshua Bell + +[Chromium] Unreviewed gardening. Rebaseline the tests added +in http://trac.webkit.org/changeset/133686 - part deux. + +* platform/chromium-win/fast/backgrounds/transformed-body-background-expected.png: Added. +* platform/chromium-win/fast/backgrounds/transformed-body-html-background-expected.png: Added. +* platform/chromium-win/fast/backgrounds/transformed-html-body-background-expected.png: Added. + 2012-11-07 Vsevolod Vlasov Layout Test inspector/debugger/script-formatter-breakpoints.html is failing Added: trunk/LayoutTests/platform/chromium-win/fast/backgrounds/transformed-body-background-expected.png (Binary files differ) Property changes on: trunk/LayoutTests/platform/chromium-win/fast/backgrounds/transformed-body-background-expected.png ___ Added: svn:mime-type Added: trunk/LayoutTests/platform/chromium-win/fast/backgrounds/transformed-body-html-background-expected.png (Binary files differ) Property changes on: trunk/LayoutTests/platform/chromium-win/fast/backgrounds/transformed-body-html-background-expected.png ___ Added: svn:mime-type Added: trunk/LayoutTests/platform/chromium-win/fast/backgrounds/transformed-html-body-background-expected.png (Binary files differ) Property changes on: trunk/LayoutTests/platform/chromium-win/fast/backgrounds/transformed-html-body-background-expected.png ___ Added: svn:mime-type ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [133698] trunk/LayoutTests
Title: [133698] trunk/LayoutTests Revision 133698 Author jsb...@chromium.org Date 2012-11-06 17:14:01 -0800 (Tue, 06 Nov 2012) Log Message fast/forms/select-set-length-with-mutation-remove is slow on chromium debug builds https://bugs.webkit.org/show_bug.cgi?id=60092 [Chromium] Unreviewed gardening - so slow it's timing out at 60s rather often. * platform/chromium/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/chromium/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (133697 => 133698) --- trunk/LayoutTests/ChangeLog 2012-11-07 01:02:15 UTC (rev 133697) +++ trunk/LayoutTests/ChangeLog 2012-11-07 01:14:01 UTC (rev 133698) @@ -1,3 +1,12 @@ +2012-11-06 Joshua Bell + +fast/forms/select-set-length-with-mutation-remove is slow on chromium debug builds +https://bugs.webkit.org/show_bug.cgi?id=60092 + +[Chromium] Unreviewed gardening - so slow it's timing out at 60s rather often. + +* platform/chromium/TestExpectations: + 2012-11-06 Hans Muller [CSS Exclusions] Changeset r133384 defeated the rectilinear polygon tests Modified: trunk/LayoutTests/platform/chromium/TestExpectations (133697 => 133698) --- trunk/LayoutTests/platform/chromium/TestExpectations 2012-11-07 01:02:15 UTC (rev 133697) +++ trunk/LayoutTests/platform/chromium/TestExpectations 2012-11-07 01:14:01 UTC (rev 133698) @@ -2350,7 +2350,7 @@ webkit.org/b/45737 [ Win Linux Mac Debug ] fast/frames/frame-limit.html [ Timeout ] # Regressions from webkit roll r67178:t67358 -webkit.org/b/60092 [ Debug ] fast/forms/select-set-length-with-mutation-remove.html [ Crash Pass Slow ] +webkit.org/b/60092 [ Debug ] fast/forms/select-set-length-with-mutation-remove.html [ Crash Pass Timeout ] webkit.org/b/60093 [ Android Linux Debug ] http/tests/incremental/slow-utf8-text.pl [ Pass Slow ] webkit.org/b/91432 fast/canvas/webgl/read-pixels-test.html [ Timeout ] ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [133691] trunk/LayoutTests
Title: [133691] trunk/LayoutTests Revision 133691 Author jsb...@chromium.org Date 2012-11-06 16:29:48 -0800 (Tue, 06 Nov 2012) Log Message [Chromium] Unreviewed gardening. A couple of expectation updates c/o dbar...@mathscribe.com and marking calendar-picker-key-operations.html flaky per webkit.org/b/101408 * platform/chromium/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/chromium/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (133690 => 133691) --- trunk/LayoutTests/ChangeLog 2012-11-07 00:16:28 UTC (rev 133690) +++ trunk/LayoutTests/ChangeLog 2012-11-07 00:29:48 UTC (rev 133691) @@ -1,3 +1,10 @@ +2012-11-06 Joshua Bell + +[Chromium] Unreviewed gardening. A couple of expectation updates c/o dbar...@mathscribe.com +and marking calendar-picker-key-operations.html flaky per webkit.org/b/101408 + +* platform/chromium/TestExpectations: + 2012-11-06 Stephen White Removed useless image baselines for filter-empty-element-crash. Modified: trunk/LayoutTests/platform/chromium/TestExpectations (133690 => 133691) --- trunk/LayoutTests/platform/chromium/TestExpectations 2012-11-07 00:16:28 UTC (rev 133690) +++ trunk/LayoutTests/platform/chromium/TestExpectations 2012-11-07 00:29:48 UTC (rev 133691) @@ -2003,7 +2003,6 @@ # WebKit merge 48500:48585, newly implemented Object.defineProperty. crbug.com/22526 fast/js/Object-defineProperty.html [ Failure ] -webkit.org/b/100463 mathml/msubsup-fuzz.html [ Crash Pass ] # Once chromium decides to definitely enable MathML, we can delete the old platform/chromium baseline for this: webkit.org/b/96960 http/tests/xmlviewer/dumpAsText/mathml.xml [ Pass Failure ] @@ -2520,7 +2519,7 @@ webkit.org/b/90363 [ Debug ] fast/overflow/lots-of-sibling-inline-boxes.html [ Pass Timeout ] webkit.org/b/90363 [ Android Release ] fast/overflow/lots-of-sibling-inline-boxes.html [ Pass Timeout ] -# WebKit roll 74255:74308 (74281?) +# WebKit roll 74255:74308 crbug.com/67416 [ Android Linux Win ] fast/text/emphasis.html [ Failure ] crbug.com/67416 fast/text/emphasis-vertical.html [ Failure ImageOnlyFailure ] crbug.com/67540 [ Android Linux ] fast/text/emphasis-avoid-ruby.html [ ImageOnlyFailure ] @@ -4144,3 +4143,5 @@ webkit.org/b/100955 http/tests/security/contentSecurityPolicy/object-src-none-blocked.html [ Skip ] webkit.org/b/101377 [ Linux Debug ] platform/chromium-linux/fast/text/international/complex-joining-using-gpos.html [ Failure ImageOnlyFailure Pass ] + +webkit.org/b/101408 platform/chromium/fast/forms/calendar-picker/calendar-picker-key-operations.html [ Failure Pass ] ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [133677] trunk/LayoutTests
Title: [133677] trunk/LayoutTests Revision 133677 Author jsb...@chromium.org Date 2012-11-06 15:06:06 -0800 (Tue, 06 Nov 2012) Log Message http/tests/inspector-enabled/dynamic-scripts.html is flakey https://bugs.webkit.org/show_bug.cgi?id=100926 Unreviewed gardening. * platform/chromium/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/chromium/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (133676 => 133677) --- trunk/LayoutTests/ChangeLog 2012-11-06 23:04:50 UTC (rev 133676) +++ trunk/LayoutTests/ChangeLog 2012-11-06 23:06:06 UTC (rev 133677) @@ -1,5 +1,14 @@ 2012-11-06 Joshua Bell +http/tests/inspector-enabled/dynamic-scripts.html is flakey +https://bugs.webkit.org/show_bug.cgi?id=100926 + +Unreviewed gardening. + +* platform/chromium/TestExpectations: + +2012-11-06 Joshua Bell + [Chromium] platform/chromium-linux/fast/text/international/complex-joining-using-gpos.html flaky on linux debug https://bugs.webkit.org/show_bug.cgi?id=101377 Modified: trunk/LayoutTests/platform/chromium/TestExpectations (133676 => 133677) --- trunk/LayoutTests/platform/chromium/TestExpectations 2012-11-06 23:04:50 UTC (rev 133676) +++ trunk/LayoutTests/platform/chromium/TestExpectations 2012-11-06 23:06:06 UTC (rev 133677) @@ -1064,6 +1064,8 @@ webkit.org/b/78810 [ Linux Win Debug ] inspector/debugger/script-formatter-console.html [ Pass Slow ] webkit.org/b/99338 [ Linux Win ] inspector/debugger/dynamic-scripts.html [ Pass Failure ] +webkit.org/b/100926 [ Win ] http/tests/inspector-enabled/dynamic-scripts.html [ Pass Failure ] + # - # Editing tests # - ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [133675] trunk/LayoutTests
Title: [133675] trunk/LayoutTests Revision 133675 Author jsb...@chromium.org Date 2012-11-06 14:58:24 -0800 (Tue, 06 Nov 2012) Log Message [Chromium] platform/chromium-linux/fast/text/international/complex-joining-using-gpos.html flaky on linux debug https://bugs.webkit.org/show_bug.cgi?id=101377 Unreviewed gardening. Add ImageOnlyFailure expectation, for extra fun. * platform/chromium/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/chromium/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (133674 => 133675) --- trunk/LayoutTests/ChangeLog 2012-11-06 22:50:30 UTC (rev 133674) +++ trunk/LayoutTests/ChangeLog 2012-11-06 22:58:24 UTC (rev 133675) @@ -1,3 +1,12 @@ +2012-11-06 Joshua Bell + +[Chromium] platform/chromium-linux/fast/text/international/complex-joining-using-gpos.html flaky on linux debug +https://bugs.webkit.org/show_bug.cgi?id=101377 + +Unreviewed gardening. Add ImageOnlyFailure expectation, for extra fun. + +* platform/chromium/TestExpectations: + 2012-11-06 Dirk Pranke Unreviewed chromium, chromium-mac-mountainlion gardening Modified: trunk/LayoutTests/platform/chromium/TestExpectations (133674 => 133675) --- trunk/LayoutTests/platform/chromium/TestExpectations 2012-11-06 22:50:30 UTC (rev 133674) +++ trunk/LayoutTests/platform/chromium/TestExpectations 2012-11-06 22:58:24 UTC (rev 133675) @@ -4142,4 +4142,4 @@ # This test is consistently leaking state into the next test (object-src-url-allowed.html) after r133069. webkit.org/b/100955 http/tests/security/contentSecurityPolicy/object-src-none-blocked.html [ Skip ] -webkit.org/b/101377 [ Linux Debug ] platform/chromium-linux/fast/text/international/complex-joining-using-gpos.html [ Failure Pass ] +webkit.org/b/101377 [ Linux Debug ] platform/chromium-linux/fast/text/international/complex-joining-using-gpos.html [ Failure ImageOnlyFailure Pass ] ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [133650] trunk/LayoutTests
Title: [133650] trunk/LayoutTests Revision 133650 Author jsb...@chromium.org Date 2012-11-06 11:24:34 -0800 (Tue, 06 Nov 2012) Log Message [Chromium] Unreviewed gardening. * platform/chromium/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/chromium/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (133649 => 133650) --- trunk/LayoutTests/ChangeLog 2012-11-06 19:19:09 UTC (rev 133649) +++ trunk/LayoutTests/ChangeLog 2012-11-06 19:24:34 UTC (rev 133650) @@ -1,3 +1,9 @@ +2012-11-06 Joshua Bell + +[Chromium] Unreviewed gardening. + +* platform/chromium/TestExpectations: + 2012-11-06 Andrei Bucur [CSS Regions] Fix failing tests on Mac after sub-pixel layout was enabled Modified: trunk/LayoutTests/platform/chromium/TestExpectations (133649 => 133650) --- trunk/LayoutTests/platform/chromium/TestExpectations 2012-11-06 19:19:09 UTC (rev 133649) +++ trunk/LayoutTests/platform/chromium/TestExpectations 2012-11-06 19:24:34 UTC (rev 133650) @@ -3532,7 +3532,7 @@ webkit.org/b/89702 platform/chromium/virtual/softwarecompositing/scaling/tiled-layer-recursion.html [ ImageOnlyFailure Pass ] webkit.org/b/89789 [ Mac ] plugins/embed-attributes-style.html [ ImageOnlyFailure Pass ] -webkit.org/b/89789 [ Mac ] userscripts/user-script-video-document.html [ Crash Pass ] +webkit.org/b/89789 [ Mac Win7 Debug ] userscripts/user-script-video-document.html [ Crash Pass ] # Flaky webkit.org/b/89794 [ Mac ] fast/regions/get-regions-by-content2.html [ Crash Pass ] ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [133647] trunk/LayoutTests
Title: [133647] trunk/LayoutTests Revision 133647 Author jsb...@chromium.org Date 2012-11-06 11:15:32 -0800 (Tue, 06 Nov 2012) Log Message [Chromium] platform/chromium-linux/fast/text/international/complex-joining-using-gpos.html flaky on linux debug https://bugs.webkit.org/show_bug.cgi?id=101377 Unreviewed gardening. Add new expectation, remove expectation for reverted change. * platform/chromium/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/chromium/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (133646 => 133647) --- trunk/LayoutTests/ChangeLog 2012-11-06 19:13:52 UTC (rev 133646) +++ trunk/LayoutTests/ChangeLog 2012-11-06 19:15:32 UTC (rev 133647) @@ -1,3 +1,12 @@ +2012-11-06 Joshua Bell + +[Chromium] platform/chromium-linux/fast/text/international/complex-joining-using-gpos.html flaky on linux debug +https://bugs.webkit.org/show_bug.cgi?id=101377 + +Unreviewed gardening. Add new expectation, remove expectation for reverted change. + +* platform/chromium/TestExpectations: + 2012-11-06 Sheriff Bot Unreviewed, rolling out r133529 and r133562. Modified: trunk/LayoutTests/platform/chromium/TestExpectations (133646 => 133647) --- trunk/LayoutTests/platform/chromium/TestExpectations 2012-11-06 19:13:52 UTC (rev 133646) +++ trunk/LayoutTests/platform/chromium/TestExpectations 2012-11-06 19:15:32 UTC (rev 133647) @@ -4156,4 +4156,4 @@ # This test is consistently leaking state into the next test (object-src-url-allowed.html) after r133069. webkit.org/b/100955 http/tests/security/contentSecurityPolicy/object-src-none-blocked.html [ Skip ] -webkit.org/b/101368 [ Lion ] css3/line-break/line-break-strict-sound-marks.html [ ImageOnlyFailure Pass ] +webkit.org/b/101377 [ Linux Debug ] platform/chromium-linux/fast/text/international/complex-joining-using-gpos.html [ Failure Pass ] ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [133635] trunk/LayoutTests
Title: [133635] trunk/LayoutTests Revision 133635 Author jsb...@chromium.org Date 2012-11-06 10:27:51 -0800 (Tue, 06 Nov 2012) Log Message [Chromium] Unreviewed gardening. * platform/chromium/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/chromium/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (133634 => 133635) --- trunk/LayoutTests/ChangeLog 2012-11-06 18:25:02 UTC (rev 133634) +++ trunk/LayoutTests/ChangeLog 2012-11-06 18:27:51 UTC (rev 133635) @@ -1,5 +1,11 @@ 2012-11-06 Joshua Bell +[Chromium] Unreviewed gardening. + +* platform/chromium/TestExpectations: + +2012-11-06 Joshua Bell + [Chromium] css3/line-break/line-break-strict-sound-marks.html image flaky on Mac 10.7 https://bugs.webkit.org/show_bug.cgi?id=101368 Modified: trunk/LayoutTests/platform/chromium/TestExpectations (133634 => 133635) --- trunk/LayoutTests/platform/chromium/TestExpectations 2012-11-06 18:25:02 UTC (rev 133634) +++ trunk/LayoutTests/platform/chromium/TestExpectations 2012-11-06 18:27:51 UTC (rev 133635) @@ -109,7 +109,7 @@ Bug(senorblanco) [ Release ] fast/js/toString-and-valueOf-override.html [ Failure ] # Failing since r133592. -Bug(senorblanco) inspector/debugger/script-formatter-breakpoints.html [ Failure ] +Bug(senorblanco) inspector/debugger/script-formatter-breakpoints.html [ Failure Timeout ] webkit.org/b/101362 [ Debug ] fast/dom/Window/customized-property-survives-gc.html [ Pass Slow ] ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [133630] trunk/LayoutTests
Title: [133630] trunk/LayoutTests Revision 133630 Author jsb...@chromium.org Date 2012-11-06 10:15:04 -0800 (Tue, 06 Nov 2012) Log Message [Chromium] css3/line-break/line-break-strict-sound-marks.html image flaky on Mac 10.7 https://bugs.webkit.org/show_bug.cgi?id=101368 Unreviewed gardening. * platform/chromium/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/chromium/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (133629 => 133630) --- trunk/LayoutTests/ChangeLog 2012-11-06 18:01:15 UTC (rev 133629) +++ trunk/LayoutTests/ChangeLog 2012-11-06 18:15:04 UTC (rev 133630) @@ -1,3 +1,12 @@ +2012-11-06 Joshua Bell + +[Chromium] css3/line-break/line-break-strict-sound-marks.html image flaky on Mac 10.7 +https://bugs.webkit.org/show_bug.cgi?id=101368 + +Unreviewed gardening. + +* platform/chromium/TestExpectations: + 2012-11-05 Simon Fraser Fix RenderGeometryMap assertion when layers are scrolled during layout Modified: trunk/LayoutTests/platform/chromium/TestExpectations (133629 => 133630) --- trunk/LayoutTests/platform/chromium/TestExpectations 2012-11-06 18:01:15 UTC (rev 133629) +++ trunk/LayoutTests/platform/chromium/TestExpectations 2012-11-06 18:15:04 UTC (rev 133630) @@ -4158,3 +4158,5 @@ # This test is consistently leaking state into the next test (object-src-url-allowed.html) after r133069. webkit.org/b/100955 http/tests/security/contentSecurityPolicy/object-src-none-blocked.html [ Skip ] + +webkit.org/b/101368 [ Lion ] css3/line-break/line-break-strict-sound-marks.html [ ImageOnlyFailure Pass ] ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [133627] trunk/LayoutTests
Title: [133627] trunk/LayoutTests Revision 133627 Author jsb...@chromium.org Date 2012-11-06 09:54:42 -0800 (Tue, 06 Nov 2012) Log Message [Chromium] Unreviewed gardening - more rebaselines following bug 101115. * platform/chromium-mac-lion/fast/block/lineboxcontain/block-glyphs-expected.png: Added. * platform/chromium-mac-lion/fast/block/lineboxcontain/block-glyphs-replaced-expected.png: Added. * platform/chromium-mac-lion/fast/block/lineboxcontain/glyphs-expected.png: Added. * platform/chromium-mac-lion/fast/repaint/stacked-diacritics-expected.png: Added. Modified Paths trunk/LayoutTests/ChangeLog Added Paths trunk/LayoutTests/platform/chromium-mac-lion/fast/block/lineboxcontain/ trunk/LayoutTests/platform/chromium-mac-lion/fast/block/lineboxcontain/block-glyphs-expected.png trunk/LayoutTests/platform/chromium-mac-lion/fast/block/lineboxcontain/block-glyphs-replaced-expected.png trunk/LayoutTests/platform/chromium-mac-lion/fast/block/lineboxcontain/glyphs-expected.png trunk/LayoutTests/platform/chromium-mac-lion/fast/repaint/stacked-diacritics-expected.png Diff Modified: trunk/LayoutTests/ChangeLog (133626 => 133627) --- trunk/LayoutTests/ChangeLog 2012-11-06 17:50:03 UTC (rev 133626) +++ trunk/LayoutTests/ChangeLog 2012-11-06 17:54:42 UTC (rev 133627) @@ -1,3 +1,12 @@ +2012-11-06 Joshua Bell + +[Chromium] Unreviewed gardening - more rebaselines following bug 101115. + +* platform/chromium-mac-lion/fast/block/lineboxcontain/block-glyphs-expected.png: Added. +* platform/chromium-mac-lion/fast/block/lineboxcontain/block-glyphs-replaced-expected.png: Added. +* platform/chromium-mac-lion/fast/block/lineboxcontain/glyphs-expected.png: Added. +* platform/chromium-mac-lion/fast/repaint/stacked-diacritics-expected.png: Added. + 2012-11-06 Raphael Kubo da Costa [EFL] Gardening, add pixel expectation for test. Added: trunk/LayoutTests/platform/chromium-mac-lion/fast/block/lineboxcontain/block-glyphs-expected.png (Binary files differ) Property changes on: trunk/LayoutTests/platform/chromium-mac-lion/fast/block/lineboxcontain/block-glyphs-expected.png ___ Added: svn:mime-type Added: trunk/LayoutTests/platform/chromium-mac-lion/fast/block/lineboxcontain/block-glyphs-replaced-expected.png (Binary files differ) Property changes on: trunk/LayoutTests/platform/chromium-mac-lion/fast/block/lineboxcontain/block-glyphs-replaced-expected.png ___ Added: svn:mime-type Added: trunk/LayoutTests/platform/chromium-mac-lion/fast/block/lineboxcontain/glyphs-expected.png (Binary files differ) Property changes on: trunk/LayoutTests/platform/chromium-mac-lion/fast/block/lineboxcontain/glyphs-expected.png ___ Added: svn:mime-type Added: trunk/LayoutTests/platform/chromium-mac-lion/fast/repaint/stacked-diacritics-expected.png (Binary files differ) Property changes on: trunk/LayoutTests/platform/chromium-mac-lion/fast/repaint/stacked-diacritics-expected.png ___ Added: svn:mime-type ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [133621] trunk/LayoutTests
Title: [133621] trunk/LayoutTests Revision 133621 Author jsb...@chromium.org Date 2012-11-06 09:26:36 -0800 (Tue, 06 Nov 2012) Log Message [Chromium] fast/dom/Window/customized-property-survives-gc.html slow on debug https://bugs.webkit.org/show_bug.cgi?id=101362 Unreviewed gardening. * platform/chromium/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/chromium/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (133620 => 133621) --- trunk/LayoutTests/ChangeLog 2012-11-06 17:15:29 UTC (rev 133620) +++ trunk/LayoutTests/ChangeLog 2012-11-06 17:26:36 UTC (rev 133621) @@ -1,3 +1,12 @@ +2012-11-06 Joshua Bell + +[Chromium] fast/dom/Window/customized-property-survives-gc.html slow on debug +https://bugs.webkit.org/show_bug.cgi?id=101362 + +Unreviewed gardening. + +* platform/chromium/TestExpectations: + 2012-11-06 Mike West CSP 1.1: Tweak the script interface to match the spec. Modified: trunk/LayoutTests/platform/chromium/TestExpectations (133620 => 133621) --- trunk/LayoutTests/platform/chromium/TestExpectations 2012-11-06 17:15:29 UTC (rev 133620) +++ trunk/LayoutTests/platform/chromium/TestExpectations 2012-11-06 17:26:36 UTC (rev 133621) @@ -111,6 +111,8 @@ # Failing since r133592. Bug(senorblanco) inspector/debugger/script-formatter-breakpoints.html [ Failure ] +webkit.org/b/101362 [ Debug ] fast/dom/Window/customized-property-survives-gc.html [ Pass Slow ] + # - # TEMPORARILY SKIPPED TESTS # - ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [133043] branches/chromium/1312/Source/WebCore/Modules/indexeddb/ IDBLevelDBBackingStore.cpp
Title: [133043] branches/chromium/1312/Source/WebCore/Modules/indexeddb/IDBLevelDBBackingStore.cpp Revision 133043 Author jsb...@chromium.org Date 2012-10-31 10:21:36 -0700 (Wed, 31 Oct 2012) Log Message Merge 132848 - IndexedDB: Crash on checking version of corrupt backing store https://bugs.webkit.org/show_bug.cgi?id=100692 Reviewed by Tony Chang. If the backing store fails to open (due to corruption, non-writeable disk, etc) the subsequent schema version check dereferences a null pointer. Fix to only do the schema check if the database opened. Chromium tests will be included with crrev.com/11196029 * Modules/indexeddb/IDBLevelDBBackingStore.cpp: (WebCore::IDBLevelDBBackingStore::open): TBR=jsb...@chromium.org Review URL: https://codereview.chromium.org/11358013 Modified Paths branches/chromium/1312/Source/WebCore/Modules/indexeddb/IDBLevelDBBackingStore.cpp Diff Modified: branches/chromium/1312/Source/WebCore/Modules/indexeddb/IDBLevelDBBackingStore.cpp (133042 => 133043) --- branches/chromium/1312/Source/WebCore/Modules/indexeddb/IDBLevelDBBackingStore.cpp 2012-10-31 17:07:31 UTC (rev 133042) +++ branches/chromium/1312/Source/WebCore/Modules/indexeddb/IDBLevelDBBackingStore.cpp 2012-10-31 17:21:36 UTC (rev 133043) @@ -295,13 +295,13 @@ String path = pathByAppendingComponent(pathBase, securityOrigin->databaseIdentifier() + ".indexeddb.leveldb"); db = LevelDBDatabase::open(path, comparator.get()); -bool knownSchema = isSchemaKnown(db.get()); -if (!knownSchema) { +if (db && !isSchemaKnown(db.get())) { LOG_ERROR("IndexedDB backing store had unknown schema, treating it as failure to open"); HistogramSupport::histogramEnumeration("WebCore.IndexedDB.BackingStore.OpenStatus", IDBLevelDBBackingStoreOpenFailedUnknownSchema, IDBLevelDBBackingStoreOpenMax); +db.release(); } -if (db && knownSchema) +if (db) HistogramSupport::histogramEnumeration("WebCore.IndexedDB.BackingStore.OpenStatus", IDBLevelDBBackingStoreOpenSuccess, IDBLevelDBBackingStoreOpenMax); else { LOG_ERROR("IndexedDB backing store open failed, attempting cleanup"); ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes