diff options
author | Ms2ger <ms2ger@gmail.com> | 2015-01-10 16:39:00 +0100 |
---|---|---|
committer | Ms2ger <ms2ger@gmail.com> | 2015-01-10 17:47:18 +0100 |
commit | b2f40b9873ac828610c3f97bc7408316b1c9c86f (patch) | |
tree | bad56b088fc43c228aab25852fd9fbbad676a38b /components/script/dom | |
parent | 14ff55443fc872f0806a6267655689d48002a3b3 (diff) | |
download | servo-b2f40b9873ac828610c3f97bc7408316b1c9c86f.tar.gz servo-b2f40b9873ac828610c3f97bc7408316b1c9c86f.zip |
Make Runnable::handler take self by value.
With my thanks to kimundi and eddyb for their help in making this approach
work.
Diffstat (limited to 'components/script/dom')
-rw-r--r-- | components/script/dom/worker.rs | 5 | ||||
-rw-r--r-- | components/script/dom/xmlhttprequest.rs | 5 |
2 files changed, 6 insertions, 4 deletions
diff --git a/components/script/dom/worker.rs b/components/script/dom/worker.rs index 3822e4e538c..8fa36436c19 100644 --- a/components/script/dom/worker.rs +++ b/components/script/dom/worker.rs @@ -115,7 +115,8 @@ impl WorkerMessageHandler { } impl Runnable for WorkerMessageHandler { - fn handler(&self){ - Worker::handle_message(self.addr.clone(), self.data); + fn handler(self: Box<WorkerMessageHandler>) { + let this = *self; + Worker::handle_message(this.addr, this.data); } } diff --git a/components/script/dom/xmlhttprequest.rs b/components/script/dom/xmlhttprequest.rs index beee21798af..a5d5c767a72 100644 --- a/components/script/dom/xmlhttprequest.rs +++ b/components/script/dom/xmlhttprequest.rs @@ -85,8 +85,9 @@ impl XHRProgressHandler { } impl Runnable for XHRProgressHandler { - fn handler(&self) { - XMLHttpRequest::handle_progress(self.addr.clone(), self.progress.clone()); + fn handler(self: Box<XHRProgressHandler>) { + let this = *self; + XMLHttpRequest::handle_progress(this.addr, this.progress); } } |