Index: content/browser/renderer_host/media/video_capture_buffer_pool.cc |
diff --git a/content/browser/renderer_host/media/video_capture_buffer_pool.cc b/content/browser/renderer_host/media/video_capture_buffer_pool.cc |
index a336a7efc7896563a19f2ec8bf29cad0625f7354..69aae6f5b278e74ba1dd9473af5c3e9afd90b2af 100644 |
--- a/content/browser/renderer_host/media/video_capture_buffer_pool.cc |
+++ b/content/browser/renderer_host/media/video_capture_buffer_pool.cc |
@@ -43,6 +43,7 @@ class VideoCaptureBufferPool::SharedMemTracker final : public Tracker { |
void* storage() override { return shared_memory_.memory(); } |
size_t requested_size() override { return shared_memory_.requested_size(); } |
size_t mapped_size() override { return shared_memory_.mapped_size(); } |
+ base::SharedMemoryHandle handle() override { return shared_memory_.handle(); } |
bool ShareToProcess(base::ProcessHandle process_handle, |
base::SharedMemoryHandle* new_handle) override { |
@@ -107,7 +108,8 @@ base::SharedMemoryHandle VideoCaptureBufferPool::ShareToProcess( |
bool VideoCaptureBufferPool::GetBufferInfo(int buffer_id, |
void** storage, |
- size_t* size) { |
+ size_t* size, |
+ base::SharedMemoryHandle* handle) { |
base::AutoLock lock(lock_); |
Tracker* tracker = GetTracker(buffer_id); |
@@ -119,6 +121,7 @@ bool VideoCaptureBufferPool::GetBufferInfo(int buffer_id, |
DCHECK(tracker->held_by_producer()); |
*storage = tracker->storage(); |
*size = tracker->mapped_size(); |
+ *handle = tracker->handle(); |
return true; |
} |