Index: content/child/indexed_db/proxy_webidbcursor_impl.cc |
diff --git a/content/child/indexed_db/proxy_webidbcursor_impl.cc b/content/child/indexed_db/proxy_webidbcursor_impl.cc |
index 0907647a7f4dcecb06568fce49c77102b3c31bf1..dd8d712fbec76adc3a270d1a1f288fc2cfdffc3b 100644 |
--- a/content/child/indexed_db/proxy_webidbcursor_impl.cc |
+++ b/content/child/indexed_db/proxy_webidbcursor_impl.cc |
@@ -108,10 +108,12 @@ void RendererWebIDBCursorImpl::postSuccessHandlerCallback() { |
void RendererWebIDBCursorImpl::SetPrefetchData( |
const std::vector<IndexedDBKey>& keys, |
const std::vector<IndexedDBKey>& primary_keys, |
- const std::vector<WebData>& values) { |
+ const std::vector<WebData>& values, |
+ const std::vector<WebKit::WebVector<WebKit::WebBlobInfo> >& blob_info) { |
prefetch_keys_.assign(keys.begin(), keys.end()); |
prefetch_primary_keys_.assign(primary_keys.begin(), primary_keys.end()); |
prefetch_values_.assign(values.begin(), values.end()); |
+ prefetch_blob_info_.assign(blob_info.begin(), blob_info.end()); |
used_prefetches_ = 0; |
pending_onsuccess_callbacks_ = 0; |
@@ -121,21 +123,25 @@ void RendererWebIDBCursorImpl::CachedContinue(WebIDBCallbacks* callbacks) { |
DCHECK_GT(prefetch_keys_.size(), 0ul); |
DCHECK(prefetch_primary_keys_.size() == prefetch_keys_.size()); |
DCHECK(prefetch_values_.size() == prefetch_keys_.size()); |
+ DCHECK(prefetch_blob_info_.size() == prefetch_keys_.size()); |
IndexedDBKey key = prefetch_keys_.front(); |
IndexedDBKey primary_key = prefetch_primary_keys_.front(); |
// this could be a real problem.. we need 2 CachedContinues |
WebData value = prefetch_values_.front(); |
+ WebKit::WebVector<WebKit::WebBlobInfo> blob_info = |
+ prefetch_blob_info_.front(); |
prefetch_keys_.pop_front(); |
prefetch_primary_keys_.pop_front(); |
prefetch_values_.pop_front(); |
+ prefetch_blob_info_.pop_front(); |
used_prefetches_++; |
pending_onsuccess_callbacks_++; |
callbacks->onSuccess(WebIDBKeyBuilder::Build(key), |
- WebIDBKeyBuilder::Build(primary_key), value); |
+ WebIDBKeyBuilder::Build(primary_key), value, blob_info); |
} |
void RendererWebIDBCursorImpl::ResetPrefetchCache() { |
@@ -154,6 +160,7 @@ void RendererWebIDBCursorImpl::ResetPrefetchCache() { |
prefetch_keys_.clear(); |
prefetch_primary_keys_.clear(); |
prefetch_values_.clear(); |
+ prefetch_blob_info_.clear(); |
pending_onsuccess_callbacks_ = 0; |
} |