https://bugs.webkit.org/show_bug.cgi?id=72529
Patch by Joshua Bell <jsbell@chromium.org> on 2011-11-16
Reviewed by Adam Barth.
Source/WebCore:
Drop maximum array key depth from 20k to 2k.
* bindings/v8/IDBBindingUtilities.cpp:
LayoutTests:
Re-enable flaky test, and drop the maximum depth tested to avoid
crashes/timeouts on test boxes when prepping the test.
* platform/chromium/test_expectations.txt:
* storage/indexeddb/key-type-array-expected.txt:
* storage/indexeddb/key-type-array.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@100504
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
+2011-11-16 Joshua Bell <jsbell@chromium.org>
+
+ IndexedDB: Reduce nested key depth threshold, re-enable flaky test
+ https://bugs.webkit.org/show_bug.cgi?id=72529
+
+ Reviewed by Adam Barth.
+
+ Re-enable flaky test, and drop the maximum depth tested to avoid
+ crashes/timeouts on test boxes when prepping the test.
+
+ * platform/chromium/test_expectations.txt:
+ * storage/indexeddb/key-type-array-expected.txt:
+ * storage/indexeddb/key-type-array.html:
+
2011-11-16 Nate Chapin <japhet@chromium.org>
Remove CRASH expectation for
BUGWK71830 : svg/zoom/page/zoom-svg-as-relative-image.html = IMAGE
BUGWK71830 WIN MAC : svg/zoom/page/relative-sized-document-scrollbars.svg = IMAGE+TEXT
-BUG_OJAN : storage/indexeddb/key-type-array.html = TIMEOUT CRASH
-
BUGWK72037 : storage/indexeddb/factory-deletedatabase-interactions.html = TEXT TIMEOUT PASS
BUGRICOW : fast/js/array-functions-non-arrays.html = TEXT
PASS Exception was thrown.
PASS code is IDBDatabaseException.DATA_ERR
-PASS indexedDB.cmp(makeArrayOfDepth(5), 0) is 1
-PASS indexedDB.cmp(makeArrayOfDepth(50), 0) is 1
-PASS indexedDB.cmp(makeArrayOfDepth(500), 0) is 1
-PASS indexedDB.cmp(makeArrayOfDepth(5000), 0) is 1
-Expecting exception from indexedDB.cmp(makeArrayOfDepth(50000), 0)
+PASS indexedDB.cmp(makeArrayOfDepth(25), 0) is 1
+PASS indexedDB.cmp(makeArrayOfDepth(250), 0) is 1
+Expecting exception from indexedDB.cmp(makeArrayOfDepth(2500), 0)
PASS Exception was thrown.
PASS code is IDBDatabaseException.DATA_ERR
function makeArrayOfDepth(n)
{
- var array = [], current = array;
+ var array = [];
while (--n) {
- current.push([]);
- current = current[0];
+ array = [array];
}
return array;
}
function testDepthLimits()
{
- shouldBe("indexedDB.cmp(makeArrayOfDepth(5), 0)", "1");
- shouldBe("indexedDB.cmp(makeArrayOfDepth(50), 0)", "1");
- shouldBe("indexedDB.cmp(makeArrayOfDepth(500), 0)", "1");
- shouldBe("indexedDB.cmp(makeArrayOfDepth(5000), 0)", "1");
- evalAndExpectException("indexedDB.cmp(makeArrayOfDepth(50000), 0)", "IDBDatabaseException.DATA_ERR");
+ shouldBe("indexedDB.cmp(makeArrayOfDepth(25), 0)", "1");
+ shouldBe("indexedDB.cmp(makeArrayOfDepth(250), 0)", "1");
+ evalAndExpectException("indexedDB.cmp(makeArrayOfDepth(2500), 0)", "IDBDatabaseException.DATA_ERR");
debug("");
done();
+2011-11-16 Joshua Bell <jsbell@chromium.org>
+
+ IndexedDB: Reduce nested key depth threshold, re-enable flaky test
+ https://bugs.webkit.org/show_bug.cgi?id=72529
+
+ Reviewed by Adam Barth.
+
+ Drop maximum array key depth from 20k to 2k.
+
+ * bindings/v8/IDBBindingUtilities.cpp:
+
2011-11-16 Nate Chapin <japhet@chromium.org>
Fix incorrect multipart handling in r100311.
namespace WebCore {
-static const size_t maximumDepth = 20000;
+static const size_t maximumDepth = 2000;
static PassRefPtr<IDBKey> createIDBKeyFromValue(v8::Handle<v8::Value> value, Vector<v8::Handle<v8::Array> >& stack)
{