File tree Expand file tree Collapse file tree 2 files changed +10
-1
lines changed Expand file tree Collapse file tree 2 files changed +10
-1
lines changed Original file line number Diff line number Diff line change @@ -58,7 +58,7 @@ function isBigUint64Array(value) {
5858}
5959
6060function isArrayBufferDetached ( value ) {
61- if ( ArrayBufferPrototypeGetByteLength ( value ) === 0 ) {
61+ if ( value instanceof ArrayBuffer && ArrayBufferPrototypeGetByteLength ( value ) === 0 ) {
6262 return _isArrayBufferDetached ( value ) ;
6363 }
6464 return false ;
Original file line number Diff line number Diff line change @@ -67,6 +67,15 @@ for (const [ value, _method ] of [
6767 }
6868}
6969
70+ // Check detached array buffers.
71+ {
72+ [ null , undefined ] . forEach ( ( entry ) => assert ( types . isArrayBufferDetached ( entry ) === false ) ) ;
73+
74+ const { buffer } = new Uint8Array ( [ 1 , 2 , 3 ] ) ;
75+ new MessageChannel ( ) . port1 . postMessage ( '' , [ buffer ] ) ;
76+ assert ( types . isArrayBufferDetached ( buffer ) ) ;
77+ }
78+
7079// Check boxed primitives.
7180[
7281 new Boolean ( ) ,
You can’t perform that action at this time.
0 commit comments