Skip to content

Commit 0c1c99b

Browse files
karolszafranskitbuschto
authored andcommitted
Work around an unknown ArrayBuffer bug in iOS 14.5
In one Tabris.js application we ran into a case where an empty ArrayBuffer was unexpectedly detached. That caused "Receiver is detached" type error in `slice()` method. Since we do not know for sure why and how that ArrayBuffer was happened to be detached we implement a workaround to prevent this exception. This issue was not reproducible in any lower version of iOS. Change-Id: Id4216fdde4aa000ab3a4b8d996a588c0632d5297
1 parent 8dd6cc7 commit 0c1c99b

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

src/tabris/util.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -175,7 +175,7 @@ export function isReadable(value) {
175175
*/
176176
export function read(value) {
177177
if (value instanceof ArrayBuffer) {
178-
return value.slice(0);
178+
return value.byteLength === 0 ? new ArrayBuffer() : value.slice(0);
179179
}
180180
if (ArrayBuffer.isView(value)) {
181181
return value.buffer.slice(0);

0 commit comments

Comments
 (0)