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

Unified Diff: webkit/glue/multipart_response_delegate.cc

Issue 6771043: Enabled actual transfer size in chromium (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Comment added Created 9 years, 8 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
« no previous file with comments | « webkit/glue/multipart_response_delegate.h ('k') | webkit/glue/multipart_response_delegate_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: webkit/glue/multipart_response_delegate.cc
diff --git a/webkit/glue/multipart_response_delegate.cc b/webkit/glue/multipart_response_delegate.cc
index 53cdc3fa7b4a050a74c6dfc79c5c049d7eb4a57d..f45ec0fd4902a85de7ebe389f6fe7849f4259686 100644
--- a/webkit/glue/multipart_response_delegate.cc
+++ b/webkit/glue/multipart_response_delegate.cc
@@ -62,6 +62,7 @@ MultipartResponseDelegate::MultipartResponseDelegate(
: client_(client),
loader_(loader),
original_response_(response),
+ raw_data_length_(0),
boundary_("--"),
first_received_data_(true),
processing_headers_(false),
@@ -76,7 +77,8 @@ MultipartResponseDelegate::MultipartResponseDelegate(
}
void MultipartResponseDelegate::OnReceivedData(const char* data,
- int data_len) {
+ int data_len,
+ int raw_data_length) {
// stop_sending_ means that we've already received the final boundary token.
// The server should stop sending us data at this point, but if it does, we
// just throw it away.
@@ -84,6 +86,7 @@ void MultipartResponseDelegate::OnReceivedData(const char* data,
return;
data_.append(data, data_len);
+ raw_data_length_ += raw_data_length;
if (first_received_data_) {
// Some servers don't send a boundary token before the first chunk of
// data. We handle this case anyway (Gecko does too).
@@ -141,7 +144,8 @@ void MultipartResponseDelegate::OnReceivedData(const char* data,
client_->didReceiveData(loader_,
data_.data(),
static_cast<int>(data_length),
- -1);
+ raw_data_length_);
+ raw_data_length_ = 0;
}
}
size_t boundary_end_pos = boundary_pos + boundary_.length();
@@ -172,8 +176,12 @@ void MultipartResponseDelegate::OnReceivedData(const char* data,
if (data_[data_.length() - 1] == '\n')
send_length = data_.length();
if (client_)
- client_->didReceiveData(loader_, data_.data(), send_length, -1);
+ client_->didReceiveData(loader_,
+ data_.data(),
+ send_length,
+ raw_data_length_);
data_ = data_.substr(send_length);
+ raw_data_length_ = 0;
}
}
@@ -183,7 +191,9 @@ void MultipartResponseDelegate::OnCompletedRequest() {
if (!processing_headers_ && !data_.empty() && !stop_sending_ && client_) {
client_->didReceiveData(loader_,
data_.data(),
- static_cast<int>(data_.length()), -1);
+ static_cast<int>(data_.length()),
+ raw_data_length_);
+ raw_data_length_ = 0;
}
}
« no previous file with comments | « webkit/glue/multipart_response_delegate.h ('k') | webkit/glue/multipart_response_delegate_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698