Title: [103052] trunk/Source/WebCore
- Revision
- 103052
- Author
- h...@chromium.org
- Date
- 2011-12-16 02:51:22 -0800 (Fri, 16 Dec 2011)
Log Message
IndexedDB: Don't prefetch values from key cursors
https://bugs.webkit.org/show_bug.cgi?id=74604
Reviewed by Tony Chang.
Since index key cursors don't have values, prefetching should not try
to retrieve them. Doing so trips an ASSERT in debug builds.
This will be tested Chromium-side.
* storage/IDBCursorBackendImpl.cpp:
(WebCore::IDBCursorBackendImpl::prefetchContinueInternal):
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (103051 => 103052)
--- trunk/Source/WebCore/ChangeLog 2011-12-16 10:48:05 UTC (rev 103051)
+++ trunk/Source/WebCore/ChangeLog 2011-12-16 10:51:22 UTC (rev 103052)
@@ -1,3 +1,18 @@
+2011-12-15 Hans Wennborg <h...@chromium.org>
+
+ IndexedDB: Don't prefetch values from key cursors
+ https://bugs.webkit.org/show_bug.cgi?id=74604
+
+ Reviewed by Tony Chang.
+
+ Since index key cursors don't have values, prefetching should not try
+ to retrieve them. Doing so trips an ASSERT in debug builds.
+
+ This will be tested Chromium-side.
+
+ * storage/IDBCursorBackendImpl.cpp:
+ (WebCore::IDBCursorBackendImpl::prefetchContinueInternal):
+
2011-12-16 Yosifumi Inoue <yo...@chromium.org>
[Forms] The "maxlength" attribute on "textarea" tag miscounts hard newlines
Modified: trunk/Source/WebCore/storage/IDBCursorBackendImpl.cpp (103051 => 103052)
--- trunk/Source/WebCore/storage/IDBCursorBackendImpl.cpp 2011-12-16 10:48:05 UTC (rev 103051)
+++ trunk/Source/WebCore/storage/IDBCursorBackendImpl.cpp 2011-12-16 10:51:22 UTC (rev 103052)
@@ -149,11 +149,16 @@
foundKeys.append(cursor->m_cursor->key());
foundPrimaryKeys.append(cursor->m_cursor->primaryKey());
- foundValues.append(SerializedScriptValue::createFromWire(cursor->m_cursor->value()));
+ if (cursor->m_cursorType != IDBCursorBackendInterface::IndexKeyCursor)
+ foundValues.append(SerializedScriptValue::createFromWire(cursor->m_cursor->value()));
+ else
+ foundValues.append(SerializedScriptValue::create());
+
sizeEstimate += cursor->m_cursor->key()->sizeEstimate();
sizeEstimate += cursor->m_cursor->primaryKey()->sizeEstimate();
- sizeEstimate += cursor->m_cursor->value().length() * sizeof(UChar);
+ if (cursor->m_cursorType != IDBCursorBackendInterface::IndexKeyCursor)
+ sizeEstimate += cursor->m_cursor->value().length() * sizeof(UChar);
if (sizeEstimate > kMaxSizeEstimate)
break;
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes