@@ -141,9 +141,8 @@ fn setup_digest(scope: &mut v8::PinScope, subtle_obj: v8::Local<v8::Object>) {
141141 let result_bytes = result. as_ref ( ) ;
142142
143143 // Create ArrayBuffer with result
144- let backing_store = v8:: ArrayBuffer :: new_backing_store_from_vec ( result_bytes. to_vec ( ) ) ;
145144 let array_buffer =
146- v8 :: ArrayBuffer :: with_backing_store ( scope, & backing_store . make_shared ( ) ) ;
145+ crate :: v8_helpers :: create_array_buffer_from_vec ( scope, result_bytes . to_vec ( ) ) ;
147146
148147 retval. set ( array_buffer. into ( ) ) ;
149148 } ,
@@ -241,9 +240,8 @@ fn setup_hmac(scope: &mut v8::PinScope, subtle_obj: v8::Local<v8::Object>) {
241240 let tag = hmac:: sign ( & key, & data) ;
242241 let result_bytes = tag. as_ref ( ) ;
243242
244- let backing_store = v8:: ArrayBuffer :: new_backing_store_from_vec ( result_bytes. to_vec ( ) ) ;
245243 let array_buffer =
246- v8 :: ArrayBuffer :: with_backing_store ( scope, & backing_store . make_shared ( ) ) ;
244+ crate :: v8_helpers :: create_array_buffer_from_vec ( scope, result_bytes . to_vec ( ) ) ;
247245
248246 retval. set ( array_buffer. into ( ) ) ;
249247 } ,
@@ -506,18 +504,16 @@ fn setup_ecdsa(scope: &mut v8::PinScope, subtle_obj: v8::Local<v8::Object>) {
506504 let result = v8:: Object :: new ( scope) ;
507505
508506 // Private key (PKCS#8 format)
509- let private_backing =
510- v8 :: ArrayBuffer :: new_backing_store_from_vec ( pkcs8_bytes . as_ref ( ) . to_vec ( ) ) ;
511- let private_buffer =
512- v8 :: ArrayBuffer :: with_backing_store ( scope , & private_backing . make_shared ( ) ) ;
507+ let private_buffer = crate :: v8_helpers :: create_array_buffer_from_vec (
508+ scope ,
509+ pkcs8_bytes . as_ref ( ) . to_vec ( ) ,
510+ ) ;
513511 let private_key_str = v8:: String :: new ( scope, "privateKey" ) . unwrap ( ) ;
514512 result. set ( scope, private_key_str. into ( ) , private_buffer. into ( ) ) ;
515513
516514 // Public key (uncompressed point format)
517- let public_backing =
518- v8:: ArrayBuffer :: new_backing_store_from_vec ( public_key_bytes. to_vec ( ) ) ;
519515 let public_buffer =
520- v8 :: ArrayBuffer :: with_backing_store ( scope, & public_backing . make_shared ( ) ) ;
516+ crate :: v8_helpers :: create_array_buffer_from_vec ( scope, public_key_bytes . to_vec ( ) ) ;
521517 let public_key_str = v8:: String :: new ( scope, "publicKey" ) . unwrap ( ) ;
522518 result. set ( scope, public_key_str. into ( ) , public_buffer. into ( ) ) ;
523519
@@ -585,9 +581,8 @@ fn setup_ecdsa(scope: &mut v8::PinScope, subtle_obj: v8::Local<v8::Object>) {
585581 }
586582 } ;
587583
588- let backing_store = v8:: ArrayBuffer :: new_backing_store_from_vec ( sig. as_ref ( ) . to_vec ( ) ) ;
589584 let array_buffer =
590- v8 :: ArrayBuffer :: with_backing_store ( scope, & backing_store . make_shared ( ) ) ;
585+ crate :: v8_helpers :: create_array_buffer_from_vec ( scope, sig . as_ref ( ) . to_vec ( ) ) ;
591586
592587 retval. set ( array_buffer. into ( ) ) ;
593588 } ,
@@ -929,9 +924,7 @@ fn setup_rsa(scope: &mut v8::PinScope, subtle_obj: v8::Local<v8::Object>) {
929924
930925 match key_pair. sign ( padding, & rng, & data, & mut sig) {
931926 Ok ( _) => {
932- let backing_store = v8:: ArrayBuffer :: new_backing_store_from_vec ( sig) ;
933- let array_buffer =
934- v8:: ArrayBuffer :: with_backing_store ( scope, & backing_store. make_shared ( ) ) ;
927+ let array_buffer = crate :: v8_helpers:: create_array_buffer_from_vec ( scope, sig) ;
935928 retval. set ( array_buffer. into ( ) ) ;
936929 }
937930 Err ( _) => {
0 commit comments