Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(25)

Unified Diff: content/browser/renderer_host/media/video_capture_host.cc

Issue 248113003: Fix for closing the desktop sharing notification bar when the shared window is closed (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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..43bc404f651be1d1a6ec45e9858c3df4a6ef9f88 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,7 @@ void VideoCaptureHost::DoHandleErrorOnIOThread(
Send(new VideoCaptureMsg_StateChanged(controller_id.device_id,
VIDEO_CAPTURE_STATE_ERROR));
- DeleteVideoCaptureControllerOnIOThread(controller_id);
+ DeleteVideoCaptureControllerOnIOThread(controller_id, true);
}
void VideoCaptureHost::DoEndedOnIOThread(
@@ -189,7 +189,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 +261,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 +285,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 +344,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 +353,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);
}
« no previous file with comments | « content/browser/renderer_host/media/video_capture_host.h ('k') | content/browser/renderer_host/media/video_capture_manager.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698