diff options
author | marmeladema <xademax@gmail.com> | 2019-07-27 16:02:05 +0100 |
---|---|---|
committer | marmeladema <xademax@gmail.com> | 2019-08-09 00:02:08 +0100 |
commit | 0ecab7bbe054b81b46dc227f0d5f3b303aef1920 (patch) | |
tree | 1c45ff72001efe7f114e3855834bcd10e85672a9 /components/script/dom/filereader.rs | |
parent | 5ca3dd9d0542b8a63141686520e1dca36f60a340 (diff) | |
download | servo-0ecab7bbe054b81b46dc227f0d5f3b303aef1920.tar.gz servo-0ecab7bbe054b81b46dc227f0d5f3b303aef1920.zip |
Remove some usage of unsafe code in FileReader
Diffstat (limited to 'components/script/dom/filereader.rs')
-rw-r--r-- | components/script/dom/filereader.rs | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/components/script/dom/filereader.rs b/components/script/dom/filereader.rs index fdba0e0aa75..1a1a734d5b0 100644 --- a/components/script/dom/filereader.rs +++ b/components/script/dom/filereader.rs @@ -22,7 +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::script_runtime::JSContext; use crate::task::TaskCanceller; use crate::task_source::file_reading::{FileReadingTask, FileReadingTaskSource}; use crate::task_source::{TaskSource, TaskSourceName}; @@ -30,7 +30,6 @@ use base64; use dom_struct::dom_struct; use encoding_rs::{Encoding, UTF_8}; use js::jsapi::Heap; -use js::jsapi::JSContext; use js::jsapi::JSObject; use js::jsval::{self, JSVal}; use js::typedarray::{ArrayBuffer, CreateWith}; @@ -233,7 +232,6 @@ impl FileReader { } // https://w3c.github.io/FileAPI/#dfn-readAsText - #[allow(unsafe_code)] pub fn process_read_eof( filereader: TrustedFileReader, gen_id: GenerationId, @@ -266,7 +264,7 @@ impl FileReader { let _ac = enter_realm(&*fr); FileReader::perform_readasarraybuffer( &fr.result, - *fr.global().get_cx(), + fr.global().get_cx(), data, &blob_contents, ) @@ -313,14 +311,14 @@ impl FileReader { #[allow(unsafe_code)] fn perform_readasarraybuffer( result: &DomRefCell<Option<FileReaderResult>>, - cx: *mut JSContext, + cx: JSContext, _: ReadMetaData, bytes: &[u8], ) { unsafe { - rooted!(in(cx) let mut array_buffer = ptr::null_mut::<JSObject>()); + rooted!(in(*cx) let mut array_buffer = ptr::null_mut::<JSObject>()); assert!( - ArrayBuffer::create(cx, CreateWith::Slice(bytes), array_buffer.handle_mut()) + ArrayBuffer::create(*cx, CreateWith::Slice(bytes), array_buffer.handle_mut()) .is_ok() ); @@ -392,7 +390,7 @@ impl FileReaderMethods for FileReader { #[allow(unsafe_code)] // https://w3c.github.io/FileAPI/#dfn-result - fn GetResult(&self, _: SafeJSContext) -> Option<StringOrObject> { + fn GetResult(&self, _: JSContext) -> Option<StringOrObject> { self.result.borrow().as_ref().map(|r| match *r { FileReaderResult::String(ref string) => StringOrObject::String(string.clone()), FileReaderResult::ArrayBuffer(ref arr_buffer) => { |