Index: content/browser/renderer_host/media/video_capture_host.cc |
diff --git a/content/browser/renderer_host/media/video_capture_host.cc b/content/browser/renderer_host/media/video_capture_host.cc |
index f261995f341df5d0ddfc121468c65449006cd1d9..3aab7533ccde1e8551cf345341d3cb7f64d43a85 100644 |
--- a/content/browser/renderer_host/media/video_capture_host.cc |
+++ b/content/browser/renderer_host/media/video_capture_host.cc |
@@ -27,7 +27,7 @@ void VideoCaptureHost::OnChannelClosing() { |
if (controller) { |
VideoCaptureControllerID controller_id(it->first); |
media_stream_manager_->video_capture_manager()->StopCaptureForClient( |
- controller.get(), controller_id, this); |
+ controller.get(), controller_id, this, false); |
++it; |
} else { |
// Remove the entry for this controller_id so that when the controller |
@@ -177,7 +177,8 @@ void VideoCaptureHost::DoHandleErrorOnIOThread( |
Send(new VideoCaptureMsg_StateChanged(controller_id.device_id, |
VIDEO_CAPTURE_STATE_ERROR)); |
- DeleteVideoCaptureControllerOnIOThread(controller_id); |
+ |
mcasas
2014/04/25 17:18:35
ultra-nit: Remove empty line.
|
+ DeleteVideoCaptureControllerOnIOThread(controller_id, true); |
} |
void VideoCaptureHost::DoEndedOnIOThread( |
@@ -189,7 +190,7 @@ void VideoCaptureHost::DoEndedOnIOThread( |
Send(new VideoCaptureMsg_StateChanged(controller_id.device_id, |
VIDEO_CAPTURE_STATE_ENDED)); |
- DeleteVideoCaptureControllerOnIOThread(controller_id); |
+ DeleteVideoCaptureControllerOnIOThread(controller_id, false); |
} |
/////////////////////////////////////////////////////////////////////////////// |
@@ -261,7 +262,7 @@ void VideoCaptureHost::DoControllerAddedOnIOThread( |
if (it == entries_.end()) { |
if (controller) { |
media_stream_manager_->video_capture_manager()->StopCaptureForClient( |
- controller.get(), controller_id, this); |
+ controller.get(), controller_id, this, false); |
} |
return; |
} |
@@ -285,7 +286,7 @@ void VideoCaptureHost::OnStopCapture(int device_id) { |
Send(new VideoCaptureMsg_StateChanged(device_id, |
VIDEO_CAPTURE_STATE_STOPPED)); |
- DeleteVideoCaptureControllerOnIOThread(controller_id); |
+ DeleteVideoCaptureControllerOnIOThread(controller_id, false); |
} |
void VideoCaptureHost::OnPauseCapture(int device_id) { |
@@ -344,7 +345,7 @@ void VideoCaptureHost::OnGetDeviceFormatsInUse( |
} |
void VideoCaptureHost::DeleteVideoCaptureControllerOnIOThread( |
- const VideoCaptureControllerID& controller_id) { |
+ const VideoCaptureControllerID& controller_id, bool on_error) { |
DCHECK_CURRENTLY_ON(BrowserThread::IO); |
EntryMap::iterator it = entries_.find(controller_id); |
@@ -353,7 +354,7 @@ void VideoCaptureHost::DeleteVideoCaptureControllerOnIOThread( |
if (it->second) { |
media_stream_manager_->video_capture_manager()->StopCaptureForClient( |
- it->second.get(), controller_id, this); |
+ it->second.get(), controller_id, this, on_error); |
} |
entries_.erase(it); |
} |