diff options
Diffstat (limited to 'cli/js')
-rw-r--r-- | cli/js/compiler.ts | 6 | ||||
-rw-r--r-- | cli/js/main.ts | 6 |
2 files changed, 12 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, diff --git a/cli/js/main.ts b/cli/js/main.ts index fbebfefe4..881d3ad4a 100644 --- a/cli/js/main.ts +++ b/cli/js/main.ts @@ -2,6 +2,12 @@ import { bootstrapMainRuntime } from "./runtime_main.ts"; import { bootstrapWorkerRuntime } from "./runtime_worker.ts"; +// 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, { bootstrapMainRuntime: { value: bootstrapMainRuntime, |