diff options
author | Kagami Sascha Rosylight <saschanaz@outlook.com> | 2019-07-25 10:09:33 +0900 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-07-25 10:09:33 +0900 |
commit | caf7a2488eda6218ccf8dc8d81f090531b4c77e8 (patch) | |
tree | 2712b566869664297ab33495612bfbbea52365dd /components/script/dom/filereader.rs | |
parent | 16b4e3446bc466c87327fac3402736d3636a5f73 (diff) | |
parent | 82f649751c045730419f9d1704305717c4f346ec (diff) | |
download | servo-caf7a2488eda6218ccf8dc8d81f090531b4c77e8.tar.gz servo-caf7a2488eda6218ccf8dc8d81f090531b4c77e8.zip |
Merge branch 'master' into tojson
Diffstat (limited to 'components/script/dom/filereader.rs')
-rw-r--r-- | components/script/dom/filereader.rs | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/components/script/dom/filereader.rs b/components/script/dom/filereader.rs index 31a87c712d6..fdba0e0aa75 100644 --- a/components/script/dom/filereader.rs +++ b/components/script/dom/filereader.rs @@ -22,6 +22,7 @@ use crate::dom::event::{Event, EventBubbles, EventCancelable}; use crate::dom::eventtarget::EventTarget; use crate::dom::globalscope::GlobalScope; use crate::dom::progressevent::ProgressEvent; +use crate::script_runtime::JSContext as SafeJSContext; use crate::task::TaskCanceller; use crate::task_source::file_reading::{FileReadingTask, FileReadingTaskSource}; use crate::task_source::{TaskSource, TaskSourceName}; @@ -265,7 +266,7 @@ impl FileReader { let _ac = enter_realm(&*fr); FileReader::perform_readasarraybuffer( &fr.result, - fr.global().get_cx(), + *fr.global().get_cx(), data, &blob_contents, ) @@ -391,12 +392,14 @@ impl FileReaderMethods for FileReader { #[allow(unsafe_code)] // https://w3c.github.io/FileAPI/#dfn-result - unsafe fn GetResult(&self, _: *mut JSContext) -> Option<StringOrObject> { + fn GetResult(&self, _: SafeJSContext) -> Option<StringOrObject> { self.result.borrow().as_ref().map(|r| match *r { FileReaderResult::String(ref string) => StringOrObject::String(string.clone()), FileReaderResult::ArrayBuffer(ref arr_buffer) => { let result = RootedTraceableBox::new(Heap::default()); - result.set((*arr_buffer.ptr.get()).to_object()); + unsafe { + result.set((*arr_buffer.ptr.get()).to_object()); + } StringOrObject::Object(result) }, }) |