diff options
author | bors-servo <metajack+bors@gmail.com> | 2015-07-02 03:28:29 -0600 |
---|---|---|
committer | bors-servo <metajack+bors@gmail.com> | 2015-07-02 03:28:29 -0600 |
commit | be9d60664d26e979489fe891b7b11468bb89ba2a (patch) | |
tree | 6b078aab759a2b7ac3d4e18d0c430ddaf5ce8f94 | |
parent | bbb39082e0f640400546d2084a450a8675820a82 (diff) | |
parent | 0a3981cdc9ade6d21610389fdd0dc0f87bbe4f72 (diff) | |
download | servo-be9d60664d26e979489fe891b7b11468bb89ba2a.tar.gz servo-be9d60664d26e979489fe891b7b11468bb89ba2a.zip |
Auto merge of #6510 - mintern:fix-worker-redirect-location, r=Ms2ger
Update Worker location for redirects
Fixes #4146
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6510)
<!-- Reviewable:end -->
5 files changed, 7 insertions, 25 deletions
diff --git a/components/script/dom/dedicatedworkerglobalscope.rs b/components/script/dom/dedicatedworkerglobalscope.rs index a3d06ee7bb9..6aea05e0e78 100644 --- a/components/script/dom/dedicatedworkerglobalscope.rs +++ b/components/script/dom/dedicatedworkerglobalscope.rs @@ -149,15 +149,16 @@ impl DedicatedWorkerGlobalScope { parent_sender: Box<ScriptChan+Send>, own_sender: Sender<(TrustedWorkerAddress, ScriptMsg)>, receiver: Receiver<(TrustedWorkerAddress, ScriptMsg)>) { - spawn_named(format!("WebWorker for {}", worker_url.serialize()), move || { + let serialized_worker_url = worker_url.serialize(); + spawn_named(format!("WebWorker for {}", serialized_worker_url), move || { task_state::initialize(SCRIPT | IN_WORKER); let roots = RootCollection::new(); let _stack_roots_tls = StackRootTLS::new(&roots); - let (url, source) = match load_whole_resource(&resource_task, worker_url.clone()) { + let (url, source) = match load_whole_resource(&resource_task, worker_url) { Err(_) => { - println!("error loading script {}", worker_url.serialize()); + println!("error loading script {}", serialized_worker_url); parent_sender.send(ScriptMsg::RunnableMsg( box WorkerEventHandler::new(worker))).unwrap(); return; @@ -168,15 +169,16 @@ impl DedicatedWorkerGlobalScope { }; let runtime = Rc::new(ScriptTask::new_rt_and_cx()); + let serialized_url = url.serialize(); let global = DedicatedWorkerGlobalScope::new( - worker_url, id, devtools_chan, runtime.clone(), resource_task, + url, id, devtools_chan, runtime.clone(), resource_task, parent_sender, own_sender, receiver); { let _ar = AutoWorkerReset::new(global.r(), worker); match runtime.evaluate_script( - global.r().reflector().get_jsobject(), source, url.serialize(), 1) { + global.r().reflector().get_jsobject(), source, serialized_url, 1) { Ok(_) => (), Err(_) => { // TODO: An error needs to be dispatched to the parent. diff --git a/tests/wpt/metadata/workers/baseurl/alpha/importScripts.html.ini b/tests/wpt/metadata/workers/baseurl/alpha/importScripts.html.ini deleted file mode 100644 index 2000c82a743..00000000000 --- a/tests/wpt/metadata/workers/baseurl/alpha/importScripts.html.ini +++ /dev/null @@ -1,5 +0,0 @@ -[importScripts.html] - type: testharness - [Base URL in workers: importScripts] - expected: FAIL - diff --git a/tests/wpt/metadata/workers/baseurl/alpha/worker.html.ini b/tests/wpt/metadata/workers/baseurl/alpha/worker.html.ini deleted file mode 100644 index 86eaa9e7aa5..00000000000 --- a/tests/wpt/metadata/workers/baseurl/alpha/worker.html.ini +++ /dev/null @@ -1,5 +0,0 @@ -[worker.html] - type: testharness - [Base URL in workers: new Worker()] - expected: FAIL - diff --git a/tests/wpt/metadata/workers/baseurl/alpha/xhr.html.ini b/tests/wpt/metadata/workers/baseurl/alpha/xhr.html.ini deleted file mode 100644 index e65ff1065bb..00000000000 --- a/tests/wpt/metadata/workers/baseurl/alpha/xhr.html.ini +++ /dev/null @@ -1,5 +0,0 @@ -[xhr.html] - type: testharness - [Base URL in workers: XHR] - expected: FAIL - diff --git a/tests/wpt/metadata/workers/interfaces/WorkerGlobalScope/location/redirect.html.ini b/tests/wpt/metadata/workers/interfaces/WorkerGlobalScope/location/redirect.html.ini deleted file mode 100644 index 55aa2aab8ac..00000000000 --- a/tests/wpt/metadata/workers/interfaces/WorkerGlobalScope/location/redirect.html.ini +++ /dev/null @@ -1,5 +0,0 @@ -[redirect.html] - type: testharness - [location with a worker in separate file that redirects] - expected: FAIL - |