| Index: webkit/glue/media/simple_data_source.cc
|
| diff --git a/webkit/glue/media/simple_data_source.cc b/webkit/glue/media/simple_data_source.cc
|
| index 07f758783539987b94da9fcc6f6f37363bf49c05..fee89fe072e86bbb5cb5e476c6daa6d0b6f6e12f 100644
|
| --- a/webkit/glue/media/simple_data_source.cc
|
| +++ b/webkit/glue/media/simple_data_source.cc
|
| @@ -113,11 +113,21 @@ void SimpleDataSource::willSendRequest(
|
| WebKit::WebURLRequest& newRequest,
|
| const WebKit::WebURLResponse& redirectResponse) {
|
| DCHECK(MessageLoop::current() == render_loop_);
|
| + base::AutoLock auto_lock(lock_);
|
|
|
| // Only allow |single_origin_| if we haven't seen a different origin yet.
|
| if (single_origin_)
|
| single_origin_ = url_.GetOrigin() == GURL(newRequest.url()).GetOrigin();
|
|
|
| + // Enforce same-origin policy and cause redirects to other origins to
|
| + // look like network errors.
|
| + // http://dev.w3.org/html5/spec/Overview.html#concept-media-load-resource
|
| + // http://dev.w3.org/html5/spec/Overview.html#fetch
|
| + if (!single_origin_) {
|
| + DoneInitialization_Locked(false);
|
| + return;
|
| + }
|
| +
|
| url_ = newRequest.url();
|
| }
|
|
|
|
|