Index: content/browser/renderer_host/media/audio_renderer_host.cc |
diff --git a/content/browser/renderer_host/media/audio_renderer_host.cc b/content/browser/renderer_host/media/audio_renderer_host.cc |
index 5ef8d4315b6ee3928bf62ba69ab97dff2e75bc77..ca963294d840dc746e7cfc613f8f5e49c368de3d 100644 |
--- a/content/browser/renderer_host/media/audio_renderer_host.cc |
+++ b/content/browser/renderer_host/media/audio_renderer_host.cc |
@@ -761,7 +761,10 @@ void AudioRendererHost::CheckOutputDeviceAccess( |
const OutputDeviceAccessCB& callback) { |
DCHECK_CURRENTLY_ON(BrowserThread::IO); |
- if (!ChildProcessSecurityPolicyImpl::GetInstance()->CanRequestURL( |
+ // Check security origin if nondefault device is requested. |
+ // Ignore check for default device, which is always authorized. |
+ if (!IsDefaultDeviceId(device_id) && |
+ !ChildProcessSecurityPolicyImpl::GetInstance()->CanRequestURL( |
render_process_id_, gurl_security_origin)) { |
content::bad_message::ReceivedBadMessage(this, |
bad_message::ARH_UNAUTHORIZED_URL); |