|
@@ -1495,13 +1495,18 @@ begin
|
|
end;
|
|
end;
|
|
|
|
|
|
function SharedToNonShared(aArray : TJSTypedArray; aWordSized : Boolean = False): TJSTypedArray;
|
|
function SharedToNonShared(aArray : TJSTypedArray; aWordSized : Boolean = False): TJSTypedArray;
|
|
|
|
+var
|
|
|
|
+ Buf : TJSSharedArrayBuffer;
|
|
|
|
|
|
begin
|
|
begin
|
|
if HaveSharedArrayBuffer and (aArray.bufferObj is TJSSharedArrayBuffer) then
|
|
if HaveSharedArrayBuffer and (aArray.bufferObj is TJSSharedArrayBuffer) then
|
|
|
|
+ begin
|
|
|
|
+ Buf:=TJSSharedArrayBuffer(aArray.bufferObj).slice(aArray.byteOffset,aArray.byteLength);
|
|
if aWordSized then
|
|
if aWordSized then
|
|
- Result:=TJSUInt16Array.New(SharedToNonShared(aArray.bufferObj))
|
|
|
|
|
|
+ Result:=TJSUInt16Array.New(SharedToNonShared(Buf))
|
|
else
|
|
else
|
|
- Result:=TJSUInt8Array.New(SharedToNonShared(aArray.bufferObj))
|
|
|
|
|
|
+ Result:=TJSUInt8Array.New(SharedToNonShared(Buf))
|
|
|
|
+ end
|
|
else
|
|
else
|
|
Result:=aArray;
|
|
Result:=aArray;
|
|
end;
|
|
end;
|