summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorguidou <guidou@chromium.org>2016-02-10 05:48:46 -0800
committerCommit bot <commit-bot@chromium.org>2016-02-10 13:49:36 +0000
commit4b69cb07ac783f0fc1b55608b068053871a2bde1 (patch)
tree0c869b86a47fb87e32218096f379ed6884b71e8c
parentf32d1e0861a94a3091f52a5f4b226e0b507d6dad (diff)
downloadchromium_src-4b69cb07ac783f0fc1b55608b068053871a2bde1.zip
chromium_src-4b69cb07ac783f0fc1b55608b068053871a2bde1.tar.gz
chromium_src-4b69cb07ac783f0fc1b55608b068053871a2bde1.tar.bz2
Do not check security origin for default audio output device.
The default device is always authorized, so the check is unnecessary and in some cases results in a crash. BUG=585075 Review URL: https://codereview.chromium.org/1689593002 Cr-Commit-Position: refs/heads/master@{#374653}
-rw-r--r--content/browser/renderer_host/media/audio_renderer_host.cc5
1 files changed, 4 insertions, 1 deletions
diff --git a/content/browser/renderer_host/media/audio_renderer_host.cc b/content/browser/renderer_host/media/audio_renderer_host.cc
index 5ef8d43..ca96329 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);