summaryrefslogtreecommitdiff
path: root/cli/js/compiler.ts
diff options
context:
space:
mode:
authorKitson Kelly <me@kitsonkelly.com>2020-03-15 21:34:22 +1100
committerGitHub <noreply@github.com>2020-03-15 11:34:22 +0100
commit2f4be6e9441c7d5b0afd0d37dccd48d3057bcd3f (patch)
tree550a6eae50fc99029c97518af338d0ed3e50206d /cli/js/compiler.ts
parent64a35acd64f4a9aedfb52f6b364c229c6f7e4090 (diff)
Remove Object.prototype.__proto__ (#4341)
Diffstat (limited to 'cli/js/compiler.ts')
-rw-r--r--cli/js/compiler.ts6
1 files changed, 6 insertions, 0 deletions
diff --git a/cli/js/compiler.ts b/cli/js/compiler.ts
index 1dddd984c..914a0baf0 100644
--- a/cli/js/compiler.ts
+++ b/cli/js/compiler.ts
@@ -400,6 +400,12 @@ function bootstrapWasmCompilerRuntime(): void {
globalThis.onmessage = wasmCompilerOnMessage;
}
+// Removes the `__proto__` for security reasons. This intentionally makes
+// Deno non compliant with ECMA-262 Annex B.2.2.1
+//
+// eslint-disable-next-line @typescript-eslint/no-explicit-any
+delete (Object.prototype as any).__proto__;
+
Object.defineProperties(globalThis, {
bootstrapWasmCompilerRuntime: {
value: bootstrapWasmCompilerRuntime,