| Index: mojo/system/data_pipe_consumer_dispatcher.cc
|
| diff --git a/mojo/system/data_pipe_consumer_dispatcher.cc b/mojo/system/data_pipe_consumer_dispatcher.cc
|
| index b4fb423e54fc88e170279adf8389ad3aa0b537e9..4f459fcc70ba27f24c15f77487139b32777a97d2 100644
|
| --- a/mojo/system/data_pipe_consumer_dispatcher.cc
|
| +++ b/mojo/system/data_pipe_consumer_dispatcher.cc
|
| @@ -51,33 +51,28 @@ DataPipeConsumerDispatcher::CreateEquivalentDispatcherAndCloseImplNoLock() {
|
| }
|
|
|
| MojoResult DataPipeConsumerDispatcher::ReadDataImplNoLock(
|
| - void* elements,
|
| - uint32_t* num_bytes,
|
| + UserPointer<void> elements,
|
| + UserPointer<uint32_t> num_bytes,
|
| MojoReadDataFlags flags) {
|
| lock().AssertAcquired();
|
|
|
| - if (!VerifyUserPointer<uint32_t>(num_bytes))
|
| - return MOJO_RESULT_INVALID_ARGUMENT;
|
| -
|
| if ((flags & MOJO_READ_DATA_FLAG_DISCARD)) {
|
| // These flags are mutally exclusive.
|
| if ((flags & MOJO_READ_DATA_FLAG_QUERY))
|
| return MOJO_RESULT_INVALID_ARGUMENT;
|
| - DVLOG_IF(2, elements) << "Discard mode: ignoring non-null |elements|";
|
| + DVLOG_IF(2, !elements.IsNull())
|
| + << "Discard mode: ignoring non-null |elements|";
|
| return data_pipe_->ConsumerDiscardData(
|
| num_bytes, (flags & MOJO_READ_DATA_FLAG_ALL_OR_NONE));
|
| }
|
|
|
| if ((flags & MOJO_READ_DATA_FLAG_QUERY)) {
|
| DCHECK(!(flags & MOJO_READ_DATA_FLAG_DISCARD)); // Handled above.
|
| - DVLOG_IF(2, elements) << "Query mode: ignoring non-null |elements|";
|
| + DVLOG_IF(2, !elements.IsNull())
|
| + << "Query mode: ignoring non-null |elements|";
|
| return data_pipe_->ConsumerQueryData(num_bytes);
|
| }
|
|
|
| - // Only verify |elements| if we're neither discarding nor querying.
|
| - if (!VerifyUserPointerWithSize<1>(elements, *num_bytes))
|
| - return MOJO_RESULT_INVALID_ARGUMENT;
|
| -
|
| return data_pipe_->ConsumerReadData(
|
| elements, num_bytes, (flags & MOJO_READ_DATA_FLAG_ALL_OR_NONE));
|
| }
|
|
|