Commit a97710c5 authored by Dmitry Titov's avatar Dmitry Titov Committed by Commit Bot

Revert "Fix 64 bit truncation warnings in renderer/core/fetch."

This reverts commit 406c50b3.

Reason for revert: Speculative revert to fix the test external/wpt/workers/semantics/structured-clone/shared.html

first started to fail in build: https://ci.chromium.org/p/chromium/builders/luci.chromium.ci/Linux%20Tests%20%28dbg%29%281%29/75530

If this won't fix the test, I'll reland the patch.

Original change's description:
> Fix 64 bit truncation warnings in renderer/core/fetch.
> 
> Use appropriate types in fetch code.
> 
> BUG=879657
> 
> Change-Id: I7f26d8a6651abafbb185193cc2670bcdb5eff05e
> Reviewed-on: https://chromium-review.googlesource.com/c/1298329
> Reviewed-by: David Bokan <bokan@chromium.org>
> Commit-Queue: Dave Tapuska <dtapuska@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#605685}

TBR=bokan@chromium.org,dtapuska@chromium.org

Change-Id: I36f8751112daf958ef849549b2c94a57c297ab8f
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 879657
Reviewed-on: https://chromium-review.googlesource.com/c/1321251Reviewed-by: default avatarDmitry Titov <dimich@chromium.org>
Commit-Queue: Dmitry Titov <dimich@chromium.org>
Cr-Commit-Position: refs/heads/master@{#605855}
parent 2440c5a9
...@@ -22,7 +22,6 @@ ...@@ -22,7 +22,6 @@
#include "third_party/blink/renderer/platform/network/encoded_form_data.h" #include "third_party/blink/renderer/platform/network/encoded_form_data.h"
#include "third_party/blink/renderer/platform/wtf/assertions.h" #include "third_party/blink/renderer/platform/wtf/assertions.h"
#include "third_party/blink/renderer/platform/wtf/functional.h" #include "third_party/blink/renderer/platform/wtf/functional.h"
#include "third_party/blink/renderer/platform/wtf/std_lib_extras.h"
namespace blink { namespace blink {
...@@ -489,9 +488,8 @@ void BodyStreamBuffer::ProcessData() { ...@@ -489,9 +488,8 @@ void BodyStreamBuffer::ProcessData() {
return; return;
DOMUint8Array* array = nullptr; DOMUint8Array* array = nullptr;
if (result == BytesConsumer::Result::kOk) { if (result == BytesConsumer::Result::kOk) {
array = array = DOMUint8Array::Create(
DOMUint8Array::Create(reinterpret_cast<const unsigned char*>(buffer), reinterpret_cast<const unsigned char*>(buffer), available);
SafeCast<uint32_t>(available));
result = consumer_->EndRead(available); result = consumer_->EndRead(available);
} }
switch (result) { switch (result) {
......
...@@ -14,7 +14,6 @@ ...@@ -14,7 +14,6 @@
#include "third_party/blink/renderer/platform/blob/blob_data.h" #include "third_party/blink/renderer/platform/blob/blob_data.h"
#include "third_party/blink/renderer/platform/heap/persistent.h" #include "third_party/blink/renderer/platform/heap/persistent.h"
#include "third_party/blink/renderer/platform/wtf/functional.h" #include "third_party/blink/renderer/platform/wtf/functional.h"
#include "third_party/blink/renderer/platform/wtf/std_lib_extras.h"
#include "v8/include/v8.h" #include "v8/include/v8.h"
namespace blink { namespace blink {
...@@ -63,7 +62,7 @@ class TeeHelper final : public GarbageCollectedFinalized<TeeHelper>, ...@@ -63,7 +62,7 @@ class TeeHelper final : public GarbageCollectedFinalized<TeeHelper>,
} }
Chunk* chunk = nullptr; Chunk* chunk = nullptr;
if (result == Result::kOk) { if (result == Result::kOk) {
chunk = new Chunk(buffer, SafeCast<wtf_size_t>(available)); chunk = new Chunk(buffer, available);
result = src_->EndRead(available); result = src_->EndRead(available);
} }
switch (result) { switch (result) {
...@@ -116,7 +115,7 @@ class TeeHelper final : public GarbageCollectedFinalized<TeeHelper>, ...@@ -116,7 +115,7 @@ class TeeHelper final : public GarbageCollectedFinalized<TeeHelper>,
using Result = BytesConsumer::Result; using Result = BytesConsumer::Result;
class Chunk final : public GarbageCollectedFinalized<Chunk> { class Chunk final : public GarbageCollectedFinalized<Chunk> {
public: public:
Chunk(const char* data, wtf_size_t size) { Chunk(const char* data, size_t size) {
buffer_.ReserveInitialCapacity(size); buffer_.ReserveInitialCapacity(size);
buffer_.Append(data, size); buffer_.Append(data, size);
// Report buffer size to V8 so GC can be triggered appropriately. // Report buffer size to V8 so GC can be triggered appropriately.
...@@ -128,7 +127,7 @@ class TeeHelper final : public GarbageCollectedFinalized<TeeHelper>, ...@@ -128,7 +127,7 @@ class TeeHelper final : public GarbageCollectedFinalized<TeeHelper>,
-static_cast<int64_t>(buffer_.size())); -static_cast<int64_t>(buffer_.size()));
} }
const char* data() const { return buffer_.data(); } const char* data() const { return buffer_.data(); }
wtf_size_t size() const { return buffer_.size(); } size_t size() const { return buffer_.size(); }
void Trace(blink::Visitor* visitor) {} void Trace(blink::Visitor* visitor) {}
......
...@@ -177,8 +177,7 @@ void BytesConsumerTestUtil::TwoPhaseReader::OnStateChange() { ...@@ -177,8 +177,7 @@ void BytesConsumerTestUtil::TwoPhaseReader::OnStateChange() {
// We don't use |available| as-is to test cases where endRead // We don't use |available| as-is to test cases where endRead
// is called with a number smaller than |available|. We choose 3 // is called with a number smaller than |available|. We choose 3
// because of the same reasons as Reader::onStateChange. // because of the same reasons as Reader::onStateChange.
wtf_size_t read = size_t read = std::min(static_cast<size_t>(3), available);
static_cast<wtf_size_t>(std::min(static_cast<size_t>(3), available));
data_.Append(buffer, read); data_.Append(buffer, read);
result = consumer_->EndRead(read); result = consumer_->EndRead(read);
} }
......
...@@ -93,11 +93,10 @@ class BytesConsumerTestUtil { ...@@ -93,11 +93,10 @@ class BytesConsumerTestUtil {
explicit Command(Name name) : name_(name) {} explicit Command(Name name) : name_(name) {}
Command(Name name, const Vector<char>& body) : name_(name), body_(body) {} Command(Name name, const Vector<char>& body) : name_(name), body_(body) {}
Command(Name name, const char* body, wtf_size_t size) : name_(name) { Command(Name name, const char* body, size_t size) : name_(name) {
body_.Append(body, size); body_.Append(body, size);
} }
Command(Name name, const char* body) Command(Name name, const char* body) : Command(name, body, strlen(body)) {}
: Command(name, body, static_cast<wtf_size_t>(strlen(body))) {}
Name GetName() const { return name_; } Name GetName() const { return name_; }
const Vector<char>& Body() const { return body_; } const Vector<char>& Body() const { return body_; }
......
...@@ -347,11 +347,10 @@ class DataConsumerHandleTestUtil { ...@@ -347,11 +347,10 @@ class DataConsumerHandleTestUtil {
Command(Name name) : name_(name) {} Command(Name name) : name_(name) {}
Command(Name name, const Vector<char>& body) : name_(name), body_(body) {} Command(Name name, const Vector<char>& body) : name_(name), body_(body) {}
Command(Name name, const char* body, wtf_size_t size) : name_(name) { Command(Name name, const char* body, size_t size) : name_(name) {
body_.Append(body, size); body_.Append(body, size);
} }
Command(Name name, const char* body) Command(Name name, const char* body) : Command(name, body, strlen(body)) {}
: Command(name, body, static_cast<wtf_size_t>(strlen(body))) {}
Name GetName() const { return name_; } Name GetName() const { return name_; }
const Vector<char>& Body() const { return body_; } const Vector<char>& Body() const { return body_; }
......
...@@ -16,7 +16,6 @@ ...@@ -16,7 +16,6 @@
#include "third_party/blink/renderer/platform/network/http_names.h" #include "third_party/blink/renderer/platform/network/http_names.h"
#include "third_party/blink/renderer/platform/network/parsed_content_disposition.h" #include "third_party/blink/renderer/platform/network/parsed_content_disposition.h"
#include "third_party/blink/renderer/platform/wtf/functional.h" #include "third_party/blink/renderer/platform/wtf/functional.h"
#include "third_party/blink/renderer/platform/wtf/std_lib_extras.h"
#include "third_party/blink/renderer/platform/wtf/text/string_builder.h" #include "third_party/blink/renderer/platform/wtf/text/string_builder.h"
#include "third_party/blink/renderer/platform/wtf/text/wtf_string.h" #include "third_party/blink/renderer/platform/wtf/text/wtf_string.h"
#include "third_party/blink/renderer/platform/wtf/typed_arrays/array_buffer_builder.h" #include "third_party/blink/renderer/platform/wtf/typed_arrays/array_buffer_builder.h"
...@@ -141,8 +140,7 @@ class FetchDataLoaderAsArrayBuffer final : public FetchDataLoader, ...@@ -141,8 +140,7 @@ class FetchDataLoaderAsArrayBuffer final : public FetchDataLoader,
return; return;
if (result == BytesConsumer::Result::kOk) { if (result == BytesConsumer::Result::kOk) {
if (available > 0) { if (available > 0) {
unsigned bytes_appended = unsigned bytes_appended = raw_data_->Append(buffer, available);
raw_data_->Append(buffer, SafeCast<wtf_size_t>(available));
if (!bytes_appended) { if (!bytes_appended) {
auto unused = consumer_->EndRead(0); auto unused = consumer_->EndRead(0);
ALLOW_UNUSED_LOCAL(unused); ALLOW_UNUSED_LOCAL(unused);
...@@ -563,7 +561,7 @@ class FetchDataLoaderAsDataPipe final : public FetchDataLoader, ...@@ -563,7 +561,7 @@ class FetchDataLoaderAsDataPipe final : public FetchDataLoader,
if (available == 0) { if (available == 0) {
result = consumer_->EndRead(0); result = consumer_->EndRead(0);
} else { } else {
uint32_t num_bytes = SafeCast<uint32_t>(available); uint32_t num_bytes = available;
MojoResult mojo_result = out_data_pipe_->WriteData( MojoResult mojo_result = out_data_pipe_->WriteData(
buffer, &num_bytes, MOJO_WRITE_DATA_FLAG_NONE); buffer, &num_bytes, MOJO_WRITE_DATA_FLAG_NONE);
if (mojo_result == MOJO_RESULT_OK) { if (mojo_result == MOJO_RESULT_OK) {
......
...@@ -55,7 +55,6 @@ ...@@ -55,7 +55,6 @@
#include "third_party/blink/renderer/platform/wtf/assertions.h" #include "third_party/blink/renderer/platform/wtf/assertions.h"
#include "third_party/blink/renderer/platform/wtf/functional.h" #include "third_party/blink/renderer/platform/wtf/functional.h"
#include "third_party/blink/renderer/platform/wtf/hash_set.h" #include "third_party/blink/renderer/platform/wtf/hash_set.h"
#include "third_party/blink/renderer/platform/wtf/std_lib_extras.h"
#include "third_party/blink/renderer/platform/wtf/text/wtf_string.h" #include "third_party/blink/renderer/platform/wtf/text/wtf_string.h"
#include "third_party/blink/renderer/platform/wtf/vector.h" #include "third_party/blink/renderer/platform/wtf/vector.h"
...@@ -275,8 +274,7 @@ class FetchManager::Loader final ...@@ -275,8 +274,7 @@ class FetchManager::Loader final
r = reader_->BeginRead(&buffer, WebDataConsumerHandle::kFlagNone, r = reader_->BeginRead(&buffer, WebDataConsumerHandle::kFlagNone,
&size); &size);
if (r == WebDataConsumerHandle::kOk) { if (r == WebDataConsumerHandle::kOk) {
buffer_.Append(static_cast<const char*>(buffer), buffer_.Append(static_cast<const char*>(buffer), size);
SafeCast<wtf_size_t>(size));
reader_->EndRead(size); reader_->EndRead(size);
} }
} }
......
...@@ -11,7 +11,6 @@ ...@@ -11,7 +11,6 @@
#include "third_party/blink/renderer/platform/bindings/script_state.h" #include "third_party/blink/renderer/platform/bindings/script_state.h"
#include "third_party/blink/renderer/platform/loader/fetch/fetch_utils.h" #include "third_party/blink/renderer/platform/loader/fetch/fetch_utils.h"
#include "third_party/blink/renderer/platform/network/http_names.h" #include "third_party/blink/renderer/platform/network/http_names.h"
#include "third_party/blink/renderer/platform/wtf/std_lib_extras.h"
using Type = network::mojom::FetchResponseType; using Type = network::mojom::FetchResponseType;
...@@ -31,7 +30,7 @@ WebVector<WebString> HeaderSetToWebVector(const WebHTTPHeaderSet& headers) { ...@@ -31,7 +30,7 @@ WebVector<WebString> HeaderSetToWebVector(const WebHTTPHeaderSet& headers) {
Vector<String> HeaderSetToVector(const WebHTTPHeaderSet& headers) { Vector<String> HeaderSetToVector(const WebHTTPHeaderSet& headers) {
Vector<String> result; Vector<String> result;
result.ReserveInitialCapacity(SafeCast<wtf_size_t>(headers.size())); result.ReserveInitialCapacity(headers.size());
// WebHTTPHeaderSet stores headers using Latin1 encoding. // WebHTTPHeaderSet stores headers using Latin1 encoding.
for (const auto& header : headers) for (const auto& header : headers)
result.push_back(String(header.data(), header.size())); result.push_back(String(header.data(), header.size()));
......
...@@ -512,7 +512,7 @@ FormDataBytesConsumer::FormDataBytesConsumer(DOMArrayBuffer* buffer) ...@@ -512,7 +512,7 @@ FormDataBytesConsumer::FormDataBytesConsumer(DOMArrayBuffer* buffer)
FormDataBytesConsumer::FormDataBytesConsumer(DOMArrayBufferView* view) FormDataBytesConsumer::FormDataBytesConsumer(DOMArrayBufferView* view)
: FormDataBytesConsumer(view->BaseAddress(), view->byteLength()) {} : FormDataBytesConsumer(view->BaseAddress(), view->byteLength()) {}
FormDataBytesConsumer::FormDataBytesConsumer(const void* data, wtf_size_t size) FormDataBytesConsumer::FormDataBytesConsumer(const void* data, size_t size)
: impl_(new SimpleFormDataBytesConsumer( : impl_(new SimpleFormDataBytesConsumer(
EncodedFormData::Create(data, size))) {} EncodedFormData::Create(data, size))) {}
......
...@@ -23,7 +23,7 @@ class FormDataBytesConsumer final : public BytesConsumer { ...@@ -23,7 +23,7 @@ class FormDataBytesConsumer final : public BytesConsumer {
explicit CORE_EXPORT FormDataBytesConsumer(const String&); explicit CORE_EXPORT FormDataBytesConsumer(const String&);
explicit CORE_EXPORT FormDataBytesConsumer(DOMArrayBuffer*); explicit CORE_EXPORT FormDataBytesConsumer(DOMArrayBuffer*);
explicit CORE_EXPORT FormDataBytesConsumer(DOMArrayBufferView*); explicit CORE_EXPORT FormDataBytesConsumer(DOMArrayBufferView*);
CORE_EXPORT FormDataBytesConsumer(const void* data, wtf_size_t); CORE_EXPORT FormDataBytesConsumer(const void* data, size_t);
CORE_EXPORT FormDataBytesConsumer(ExecutionContext*, CORE_EXPORT FormDataBytesConsumer(ExecutionContext*,
scoped_refptr<EncodedFormData>); scoped_refptr<EncodedFormData>);
CORE_EXPORT static FormDataBytesConsumer* CreateForTesting( CORE_EXPORT static FormDataBytesConsumer* CreateForTesting(
......
...@@ -40,7 +40,7 @@ class HeadersIterationSource final ...@@ -40,7 +40,7 @@ class HeadersIterationSource final
private: private:
Vector<std::pair<String, String>> headers_; Vector<std::pair<String, String>> headers_;
wtf_size_t current_; size_t current_;
}; };
} // namespace } // namespace
...@@ -246,7 +246,7 @@ void Headers::FillWith(const Vector<Vector<String>>& object, ...@@ -246,7 +246,7 @@ void Headers::FillWith(const Vector<Vector<String>>& object,
// TypeError. // TypeError.
// 2. Append |header|’s first item/|header|’s second item to |headers|. // 2. Append |header|’s first item/|header|’s second item to |headers|.
// Rethrow any exception." // Rethrow any exception."
for (wtf_size_t i = 0; i < object.size(); ++i) { for (size_t i = 0; i < object.size(); ++i) {
if (object[i].size() != 2) { if (object[i].size() != 2) {
exception_state.ThrowTypeError("Invalid value"); exception_state.ThrowTypeError("Invalid value");
return; return;
......
...@@ -7,7 +7,6 @@ ...@@ -7,7 +7,6 @@
#include "third_party/blink/public/platform/platform.h" #include "third_party/blink/public/platform/platform.h"
#include "third_party/blink/renderer/platform/network/http_names.h" #include "third_party/blink/renderer/platform/network/http_names.h"
#include "third_party/blink/renderer/platform/network/http_parsers.h" #include "third_party/blink/renderer/platform/network/http_parsers.h"
#include "third_party/blink/renderer/platform/wtf/std_lib_extras.h"
#include <algorithm> #include <algorithm>
#include <utility> #include <utility>
...@@ -299,10 +298,7 @@ bool MultipartParser::ParseHeaderFields(const char** bytes_pointer, ...@@ -299,10 +298,7 @@ bool MultipartParser::ParseHeaderFields(const char** bytes_pointer,
HTTPHeaderMap* header_fields) { HTTPHeaderMap* header_fields) {
// Combine the current bytes with buffered header bytes if needed. // Combine the current bytes with buffered header bytes if needed.
const char* header_bytes = *bytes_pointer; const char* header_bytes = *bytes_pointer;
if ((bytes_end - *bytes_pointer) > std::numeric_limits<wtf_size_t>::max()) size_t header_size = static_cast<size_t>(bytes_end - *bytes_pointer);
return false;
wtf_size_t header_size = static_cast<wtf_size_t>(bytes_end - *bytes_pointer);
if (!buffered_header_bytes_.IsEmpty()) { if (!buffered_header_bytes_.IsEmpty()) {
buffered_header_bytes_.Append(header_bytes, header_size); buffered_header_bytes_.Append(header_bytes, header_size);
header_bytes = buffered_header_bytes_.data(); header_bytes = buffered_header_bytes_.data();
......
...@@ -6,7 +6,6 @@ ...@@ -6,7 +6,6 @@
#include "testing/gtest/include/gtest/gtest.h" #include "testing/gtest/include/gtest/gtest.h"
#include "third_party/blink/renderer/platform/network/http_names.h" #include "third_party/blink/renderer/platform/network/http_names.h"
#include "third_party/blink/renderer/platform/wtf/std_lib_extras.h"
#include <string.h> #include <string.h>
#include <algorithm> #include <algorithm>
...@@ -40,16 +39,16 @@ class MockMultipartParserClient final ...@@ -40,16 +39,16 @@ class MockMultipartParserClient final
parts_.push_back(header_fields); parts_.push_back(header_fields);
} }
void PartDataInMultipartReceived(const char* bytes, size_t size) override { void PartDataInMultipartReceived(const char* bytes, size_t size) override {
parts_.back().data.Append(bytes, SafeCast<wtf_size_t>(size)); parts_.back().data.Append(bytes, size);
} }
void PartDataInMultipartFullyReceived() override { void PartDataInMultipartFullyReceived() override {
parts_.back().data_fully_received = true; parts_.back().data_fully_received = true;
} }
const Part& GetPart(wtf_size_t part_index) const { const Part& GetPart(size_t part_index) const {
EXPECT_LT(part_index, NumberOfParts()); EXPECT_LT(part_index, NumberOfParts());
return part_index < NumberOfParts() ? parts_[part_index] : empty_part_; return part_index < NumberOfParts() ? parts_[part_index] : empty_part_;
} }
wtf_size_t NumberOfParts() const { return parts_.size(); } size_t NumberOfParts() const { return parts_.size(); }
private: private:
Part empty_part_; Part empty_part_;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment