diff options
author | sky@chromium.org <sky@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-03-14 14:38:53 +0000 |
---|---|---|
committer | sky@chromium.org <sky@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-03-14 14:38:53 +0000 |
commit | bc3973a331bfc600bdf4d81c43daeede05b796f9 (patch) | |
tree | 47c83d9d2be789ca35be07c099baacd6da266efd /mojo | |
parent | e75d15e54769eca998cd7115413e8eeea0c25f04 (diff) | |
download | chromium_src-bc3973a331bfc600bdf4d81c43daeede05b796f9.zip chromium_src-bc3973a331bfc600bdf4d81c43daeede05b796f9.tar.gz chromium_src-bc3973a331bfc600bdf4d81c43daeede05b796f9.tar.bz2 |
Removes use of vector::data
It's not supported on android.
BUG=none
TEST=none
R=viettrungluu@chromium.org
Review URL: https://codereview.chromium.org/199673002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@257099 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'mojo')
-rw-r--r-- | mojo/bindings/js/core.cc | 4 | ||||
-rw-r--r-- | mojo/system/message_in_transit.cc | 4 | ||||
-rw-r--r-- | mojo/system/raw_channel_unittest.cc | 10 |
3 files changed, 11 insertions, 7 deletions
diff --git a/mojo/bindings/js/core.cc b/mojo/bindings/js/core.cc index 83ab467..99593a6 100644 --- a/mojo/bindings/js/core.cc +++ b/mojo/bindings/js/core.cc @@ -40,7 +40,7 @@ MojoResult WriteMessage(MojoHandle handle, return MojoWriteMessage(handle, buffer.bytes(), static_cast<uint32_t>(buffer.num_bytes()), - handles.empty() ? NULL : handles.data(), + handles.empty() ? NULL : &handles[0], static_cast<uint32_t>(handles.size()), flags); } @@ -68,7 +68,7 @@ gin::Dictionary ReadMessage(const gin::Arguments& args, MojoHandle handle, result = MojoReadMessage(handle, buffer.bytes(), &num_bytes, - handles.empty() ? NULL : handles.data(), + handles.empty() ? NULL : &handles[0], &num_handles, flags); diff --git a/mojo/system/message_in_transit.cc b/mojo/system/message_in_transit.cc index 8be2f31..6821b48 100644 --- a/mojo/system/message_in_transit.cc +++ b/mojo/system/message_in_transit.cc @@ -135,10 +135,12 @@ MessageInTransit::~MessageInTransit() { bool MessageInTransit::GetNextMessageSize(const void* buffer, size_t buffer_size, size_t* next_message_size) { + DCHECK(next_message_size); + if (!buffer_size) + return false; DCHECK(buffer); DCHECK_EQ(reinterpret_cast<uintptr_t>(buffer) % MessageInTransit::kMessageAlignment, 0u); - DCHECK(next_message_size); if (buffer_size < sizeof(Header)) return false; diff --git a/mojo/system/raw_channel_unittest.cc b/mojo/system/raw_channel_unittest.cc index 8099a81..fbf2b87 100644 --- a/mojo/system/raw_channel_unittest.cc +++ b/mojo/system/raw_channel_unittest.cc @@ -41,7 +41,7 @@ scoped_ptr<MessageInTransit> MakeTestMessage(uint32_t num_bytes) { return make_scoped_ptr( new MessageInTransit(MessageInTransit::kTypeMessagePipeEndpoint, MessageInTransit::kSubtypeMessagePipeEndpointData, - num_bytes, 0, bytes.data())); + num_bytes, 0, bytes.empty() ? NULL : &bytes[0])); } bool CheckMessageData(const void* bytes, uint32_t num_bytes) { @@ -141,12 +141,14 @@ class TestMessageReaderAndChecker { // If we have the header.... size_t message_size; - if (MessageInTransit::GetNextMessageSize(bytes_.data(), bytes_.size(), - &message_size)) { + if (MessageInTransit::GetNextMessageSize( + bytes_.empty() ? NULL : &bytes_[0], + bytes_.size(), + &message_size)) { // If we've read the whole message.... if (bytes_.size() >= message_size) { bool rv = true; - MessageInTransit::View message_view(message_size, bytes_.data()); + MessageInTransit::View message_view(message_size, &bytes_[0]); CHECK_EQ(message_view.main_buffer_size(), message_size); if (message_view.num_bytes() != expected_size) { |