| Index: media/capture/video/fake_video_capture_device.cc
|
| diff --git a/media/capture/video/fake_video_capture_device.cc b/media/capture/video/fake_video_capture_device.cc
|
| index 8ea60bccc8efd1f1e11626a75de38f7e8bc173bf..9c87afc9e415ce8a45420385621c8cdcd04b5d65 100644
|
| --- a/media/capture/video/fake_video_capture_device.cc
|
| +++ b/media/capture/video/fake_video_capture_device.cc
|
| @@ -320,16 +320,19 @@ void FakeVideoCaptureDevice::CaptureUsingClientBuffers(
|
| DCHECK(thread_checker_.CalledOnValidThread());
|
|
|
| const int arbitrary_frame_feedback_id = 0;
|
| - std::unique_ptr<VideoCaptureDevice::Client::Buffer> capture_buffer(
|
| + VideoCaptureDevice::Client::Buffer capture_buffer =
|
| client_->ReserveOutputBuffer(
|
| capture_format_.frame_size, capture_format_.pixel_format,
|
| - capture_format_.pixel_storage, arbitrary_frame_feedback_id));
|
| - DLOG_IF(ERROR, !capture_buffer) << "Couldn't allocate Capture Buffer";
|
| - DCHECK(capture_buffer->data()) << "Buffer has NO backing memory";
|
| + capture_format_.pixel_storage, arbitrary_frame_feedback_id);
|
| + DLOG_IF(ERROR, !capture_buffer.is_valid())
|
| + << "Couldn't allocate Capture Buffer";
|
| + auto buffer_access =
|
| + capture_buffer.handle_provider()->GetHandleForInProcessAccess();
|
| + DCHECK(buffer_access->data()) << "Buffer has NO backing memory";
|
|
|
| DCHECK_EQ(PIXEL_STORAGE_CPU, capture_format_.pixel_storage);
|
| - uint8_t* data_ptr = static_cast<uint8_t*>(capture_buffer->data());
|
| - memset(data_ptr, 0, capture_buffer->mapped_size());
|
| + uint8_t* data_ptr = buffer_access->data();
|
| + memset(data_ptr, 0, buffer_access->mapped_size());
|
| DrawPacman(capture_format_.pixel_format, data_ptr, elapsed_time_,
|
| fake_capture_rate_, capture_format_.frame_size, current_zoom_);
|
|
|
|
|