Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1141)

Unified Diff: content/browser/fileapi/upload_file_system_file_element_reader.cc

Issue 470323003: [fsp] Improve performance for reading small chunks of data. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebased. Created 6 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/browser/fileapi/upload_file_system_file_element_reader.cc
diff --git a/content/browser/fileapi/upload_file_system_file_element_reader.cc b/content/browser/fileapi/upload_file_system_file_element_reader.cc
index c9bbc885c985a4d505e074d6b57926a3a32c4d6e..a6a99ca0c75f68de2312838e007b7f881fc77ada 100644
--- a/content/browser/fileapi/upload_file_system_file_element_reader.cc
+++ b/content/browser/fileapi/upload_file_system_file_element_reader.cc
@@ -5,8 +5,10 @@
#include "content/browser/fileapi/upload_file_system_file_element_reader.h"
#include <algorithm>
+#include <limits>
#include "base/bind.h"
+#include "base/numerics/safe_conversions.h"
#include "net/base/net_errors.h"
#include "storage/browser/blob/file_stream_reader.h"
#include "storage/browser/fileapi/file_system_context.h"
@@ -41,11 +43,13 @@ int UploadFileSystemFileElementReader::Init(
position_ = 0;
// Initialize the stream reader and the length.
- stream_reader_ =
- file_system_context_->CreateFileStreamReader(
- file_system_context_->CrackURL(url_),
- range_offset_,
- expected_modification_time_);
+ stream_reader_ = file_system_context_->CreateFileStreamReader(
+ file_system_context_->CrackURL(url_),
+ range_offset_,
+ range_length_ == std::numeric_limits<uint64>::max()
+ ? storage::kMaximumLength
+ : base::checked_cast<int64>(range_length_),
+ expected_modification_time_);
DCHECK(stream_reader_);
const int64 result = stream_reader_->GetLength(

Powered by Google App Engine
This is Rietveld 408576698