summaryrefslogtreecommitdiff
path: root/runtime/js/10_permissions.js
diff options
context:
space:
mode:
Diffstat (limited to 'runtime/js/10_permissions.js')
-rw-r--r--runtime/js/10_permissions.js9
1 files changed, 7 insertions, 2 deletions
diff --git a/runtime/js/10_permissions.js b/runtime/js/10_permissions.js
index f048a5d62..cf2fdde7d 100644
--- a/runtime/js/10_permissions.js
+++ b/runtime/js/10_permissions.js
@@ -20,6 +20,7 @@
PromiseResolve,
PromiseReject,
ReflectHas,
+ SafeArrayIterator,
SymbolFor,
TypeError,
} = window.__bootstrap.primordials;
@@ -233,7 +234,9 @@
function serializePermissions(permissions) {
if (typeof permissions == "object" && permissions != null) {
const serializedPermissions = {};
- for (const key of ["read", "write", "run", "ffi"]) {
+ for (
+ const key of new SafeArrayIterator(["read", "write", "run", "ffi"])
+ ) {
if (ArrayIsArray(permissions[key])) {
serializedPermissions[key] = ArrayPrototypeMap(
permissions[key],
@@ -243,7 +246,9 @@
serializedPermissions[key] = permissions[key];
}
}
- for (const key of ["env", "hrtime", "net", "sys"]) {
+ for (
+ const key of new SafeArrayIterator(["env", "hrtime", "net", "sys"])
+ ) {
if (ArrayIsArray(permissions[key])) {
serializedPermissions[key] = ArrayPrototypeSlice(permissions[key]);
} else {