diff options
Diffstat (limited to 'components/script/dom/filereader.rs')
-rw-r--r-- | components/script/dom/filereader.rs | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/components/script/dom/filereader.rs b/components/script/dom/filereader.rs index bb57ad5d9de..9b5c39b013c 100644 --- a/components/script/dom/filereader.rs +++ b/components/script/dom/filereader.rs @@ -9,7 +9,7 @@ use dom::bindings::codegen::Bindings::FileReaderBinding::{self, FileReaderConsta use dom::bindings::codegen::UnionTypes::StringOrObject; use dom::bindings::error::{Error, ErrorResult, Fallible}; use dom::bindings::inheritance::Castable; -use dom::bindings::js::{JS, MutNullableHeap, Root}; +use dom::bindings::js::{MutNullableJS, Root}; use dom::bindings::refcounted::Trusted; use dom::bindings::reflector::{DomObject, reflect_dom_object}; use dom::bindings::str::DOMString; @@ -34,9 +34,9 @@ use servo_atoms::Atom; use std::cell::Cell; use std::ptr; use std::sync::Arc; +use std::thread; use task_source::TaskSource; use task_source::file_reading::{FileReadingTaskSource, FileReadingRunnable, FileReadingTask}; -use util::thread::spawn_named; #[derive(PartialEq, Clone, Copy, JSTraceable, HeapSizeOf)] pub enum FileReaderFunction { @@ -86,7 +86,7 @@ pub enum FileReaderResult { pub struct FileReader { eventtarget: EventTarget, ready_state: Cell<FileReaderReadyState>, - error: MutNullableHeap<JS<DOMException>>, + error: MutNullableJS<DOMException>, result: DOMRefCell<Option<FileReaderResult>>, generation_id: Cell<GenerationId>, } @@ -96,7 +96,7 @@ impl FileReader { FileReader { eventtarget: EventTarget::new_inherited(), ready_state: Cell::new(FileReaderReadyState::Empty), - error: MutNullableHeap::new(None), + error: MutNullableJS::new(None), result: DOMRefCell::new(None), generation_id: Cell::new(GenerationId(0)), } @@ -401,9 +401,10 @@ impl FileReader { let wrapper = global.get_runnable_wrapper(); let task_source = global.file_reading_task_source(); - spawn_named("file reader async operation".to_owned(), move || { + thread::Builder::new().name("file reader async operation".to_owned()).spawn(move || { perform_annotated_read_operation(gen_id, load_data, blob_contents, fr, task_source, wrapper) - }); + }).expect("Thread spawning failed"); + Ok(()) } |