diff options
author | deror1869107 <sungyuanyao@gmail.com> | 2016-12-26 02:53:48 +0800 |
---|---|---|
committer | deror1869107 <sungyuanyao@gmail.com> | 2016-12-26 11:15:42 +0800 |
commit | 684db8bd293e20ea0cd6e59697dfa84ca15fe8b2 (patch) | |
tree | e53603e7330ee915c4c328899db68d598449ecac /components/script/dom | |
parent | b319dedda94e47a1ca6a789f0c2852c58c01223c (diff) | |
download | servo-684db8bd293e20ea0cd6e59697dfa84ca15fe8b2.tar.gz servo-684db8bd293e20ea0cd6e59697dfa84ca15fe8b2.zip |
Rewrite Crypto::GetRandomValues to use typed array API
Fix mut typed_array
Redundant code
Diffstat (limited to 'components/script/dom')
-rw-r--r-- | components/script/dom/crypto.rs | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/components/script/dom/crypto.rs b/components/script/dom/crypto.rs index 4120456c77c..57b561e8a58 100644 --- a/components/script/dom/crypto.rs +++ b/components/script/dom/crypto.rs @@ -6,7 +6,6 @@ use core::nonzero::NonZero; use dom::bindings::cell::DOMRefCell; use dom::bindings::codegen::Bindings::CryptoBinding; use dom::bindings::codegen::Bindings::CryptoBinding::CryptoMethods; -use dom::bindings::conversions::array_buffer_view_data; use dom::bindings::error::{Error, Fallible}; use dom::bindings::js::Root; use dom::bindings::reflector::{Reflector, reflect_dom_object}; @@ -46,9 +45,10 @@ impl CryptoMethods for Crypto { input: *mut JSObject) -> Fallible<NonZero<*mut JSObject>> { assert!(!input.is_null()); - let mut data = match array_buffer_view_data::<u8>(input) { - Some(data) => data, - None => { + typedarray!(in(_cx) let mut array_buffer_view: ArrayBufferView = input); + let mut data = match array_buffer_view.as_mut() { + Ok(x) => x.as_mut_slice(), + Err(_) => { return Err(Error::Type("Argument to Crypto.getRandomValues is not an ArrayBufferView" .to_owned())); } |