diff options
author | Kitson Kelly <me@kitsonkelly.com> | 2020-03-15 21:34:22 +1100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-03-15 11:34:22 +0100 |
commit | 2f4be6e9441c7d5b0afd0d37dccd48d3057bcd3f (patch) | |
tree | 550a6eae50fc99029c97518af338d0ed3e50206d /cli/js/compiler.ts | |
parent | 64a35acd64f4a9aedfb52f6b364c229c6f7e4090 (diff) |
Remove Object.prototype.__proto__ (#4341)
Diffstat (limited to 'cli/js/compiler.ts')
-rw-r--r-- | cli/js/compiler.ts | 6 |
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, |