| 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;
|
| }
|
|
|