| Index: services/video_capture/video_capture_device_proxy_impl.cc
|
| diff --git a/services/video_capture/video_capture_device_proxy_impl.cc b/services/video_capture/video_capture_device_proxy_impl.cc
|
| index 56a3f7f2726fa8d6a72d9998fc10e5542f8631dd..5e1930394e71887a79971500c123807ef1893ca6 100644
|
| --- a/services/video_capture/video_capture_device_proxy_impl.cc
|
| +++ b/services/video_capture/video_capture_device_proxy_impl.cc
|
| @@ -12,7 +12,10 @@ VideoCaptureDeviceProxyImpl::VideoCaptureDeviceProxyImpl(
|
| std::unique_ptr<media::VideoCaptureDevice> device)
|
| : device_(std::move(device)) {}
|
|
|
| -VideoCaptureDeviceProxyImpl::~VideoCaptureDeviceProxyImpl() = default;
|
| +VideoCaptureDeviceProxyImpl::~VideoCaptureDeviceProxyImpl() {
|
| + if (device_running_)
|
| + device_->StopAndDeAllocate();
|
| +}
|
|
|
| void VideoCaptureDeviceProxyImpl::Start(
|
| mojom::VideoCaptureFormatPtr requested_format,
|
| @@ -27,6 +30,12 @@ void VideoCaptureDeviceProxyImpl::Start(
|
| auto media_client =
|
| base::WrapUnique(new DeviceClientMojoToMediaAdapter(std::move(client)));
|
| device_->AllocateAndStart(params, std::move(media_client));
|
| + device_running_ = true;
|
| +}
|
| +
|
| +void VideoCaptureDeviceProxyImpl::Stop() {
|
| + device_->StopAndDeAllocate();
|
| + device_running_ = false;
|
| }
|
|
|
| // static
|
|
|