Chromium Code Reviews| Index: content/browser/renderer_host/media/media_stream_manager.cc |
| diff --git a/content/browser/renderer_host/media/media_stream_manager.cc b/content/browser/renderer_host/media/media_stream_manager.cc |
| index 8194fde724332595de1996e35f27e6c6f4aa7e41..605cc7a546fff01bd4137f87e04150e5cec8f39f 100644 |
| --- a/content/browser/renderer_host/media/media_stream_manager.cc |
| +++ b/content/browser/renderer_host/media/media_stream_manager.cc |
| @@ -690,7 +690,14 @@ void MediaStreamManager::SettingsError(const std::string& label) { |
| } |
| void MediaStreamManager::UseFakeDevice() { |
| - DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO)); |
| + if(!BrowserThread::CurrentlyOn(BrowserThread::IO)) { |
| + BrowserThread::PostTask(BrowserThread::IO, |
| + FROM_HERE, |
| + base::Bind(&media_stream::MediaStreamManager::UseFakeDevice, |
| + base::Unretained(this))); |
| + return; |
| + } |
| + |
| video_capture_manager()->UseFakeDevice(); |
| device_settings_->UseFakeUI(); |
| } |
| @@ -715,6 +722,9 @@ void MediaStreamManager::WillDestroyCurrentMessageLoop() { |
| void MediaStreamManager::NotifyObserverDevicesOpened(DeviceRequest* request) { |
| content::MediaObserver* media_observer = |
| content::GetContentClient()->browser()->GetMediaObserver(); |
| + // Check if the embedder isn't interested in the notification. |
|
jam
2012/09/04 15:18:14
nit: no need to comment this, per the style guide
phoglund_chromium
2012/09/05 11:43:54
Done.
|
| + if (media_observer == NULL) |
| + return; |
| content::MediaStreamDevices opened_devices; |
| DevicesFromRequest(request, &opened_devices); |
| DCHECK(!opened_devices.empty()); |
| @@ -726,6 +736,9 @@ void MediaStreamManager::NotifyObserverDevicesOpened(DeviceRequest* request) { |
| void MediaStreamManager::NotifyObserverDevicesClosed(DeviceRequest* request) { |
| content::MediaObserver* media_observer = |
| content::GetContentClient()->browser()->GetMediaObserver(); |
| + // Check if the embedder isn't interested in the notification. |
| + if (media_observer == NULL) |
| + return; |
| content::MediaStreamDevices closed_devices; |
| DevicesFromRequest(request, &closed_devices); |
| if (closed_devices.empty()) |