summaryrefslogtreecommitdiffstats
path: root/mojo
diff options
context:
space:
mode:
authorsky@chromium.org <sky@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-03-14 14:38:53 +0000
committersky@chromium.org <sky@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-03-14 14:38:53 +0000
commitbc3973a331bfc600bdf4d81c43daeede05b796f9 (patch)
tree47c83d9d2be789ca35be07c099baacd6da266efd /mojo
parente75d15e54769eca998cd7115413e8eeea0c25f04 (diff)
downloadchromium_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.cc4
-rw-r--r--mojo/system/message_in_transit.cc4
-rw-r--r--mojo/system/raw_channel_unittest.cc10
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) {