@@ -65,8 +65,8 @@ pub fn fill_inner(dest: &mut [MaybeUninit<u8>]) -> Result<(), Error> {
65
65
fn is_sab ( ) -> bool {
66
66
use core:: sync:: atomic:: { AtomicU8 , Ordering } ;
67
67
68
+ use js_sys:: Object ;
68
69
use js_sys:: WebAssembly :: Memory ;
69
- use js_sys:: { Object , SharedArrayBuffer } ;
70
70
use wasm_bindgen:: JsCast ;
71
71
72
72
const MEMORY_KIND_UNINIT : u8 = 0 ;
@@ -85,19 +85,9 @@ fn is_sab() -> bool {
85
85
// `SharedArrayBuffer` is only available with COOP & COEP. But even without its
86
86
// possible to create a shared `WebAssembly.Memory`, so we check for that via
87
87
// the constructor name.
88
- //
89
- // Keep in mind that `crossOriginIsolated` is not available on Node.js, in
90
- // which case we can still use `instanceof` because `SharedArrayBuffer` is
91
- // always available.
92
- let shared = match CROSS_ORIGIN_ISOLATED . with ( Option :: clone) {
93
- Some ( true ) | None => buffer. is_instance_of :: < SharedArrayBuffer > ( ) ,
94
- Some ( false ) => {
95
- let constructor_name = Object :: from ( buffer) . constructor ( ) . name ( ) ;
96
- SHARED_ARRAY_BUFFER_NAME . with ( |name| & constructor_name == name)
97
- }
98
- } ;
99
-
100
- let val = if shared {
88
+ let constructor_name = Object :: from ( buffer) . constructor ( ) . name ( ) ;
89
+ let val = if SHARED_ARRAY_BUFFER_NAME . with ( |sab_name| & constructor_name == sab_name)
90
+ {
101
91
MEMORY_KIND_SHARED
102
92
} else {
103
93
MEMORY_KIND_NOT_SHARED
@@ -128,9 +118,6 @@ extern "C" {
128
118
fn get_random_values ( this : & Crypto , buf : & Uint8Array ) -> Result < ( ) , JsValue > ;
129
119
#[ wasm_bindgen( method, js_name = getRandomValues, catch) ]
130
120
fn get_random_values_ref ( this : & Crypto , buf : & mut [ u8 ] ) -> Result < ( ) , JsValue > ;
131
- // Returns the [`crossOriginIsolated`](https://developer.mozilla.org/en-US/docs/Web/API/crossOriginIsolated) global property.
132
- #[ wasm_bindgen( thread_local_v2, js_namespace = globalThis, js_name = crossOriginIsolated) ]
133
- static CROSS_ORIGIN_ISOLATED : Option < bool > ;
134
121
#[ wasm_bindgen( thread_local_v2, static_string) ]
135
122
static SHARED_ARRAY_BUFFER_NAME : JsString = "SharedArrayBuffer" ;
136
123
}
0 commit comments