summaryrefslogtreecommitdiff
path: root/runtime/js
diff options
context:
space:
mode:
authorYoshiya Hinosawa <stibium121@gmail.com>2022-05-20 11:57:05 +0900
committerGitHub <noreply@github.com>2022-05-20 11:57:05 +0900
commite7c894e8f54ebd2d9fd61c97a265906ac54e2068 (patch)
tree86ae707a89d2e069bfdfb93a32b7c9525e010680 /runtime/js
parent0a96cb62a83f1d881ebc7fd93dee1796d20f17ff (diff)
fix: prevent Deno.exit to fail when dispatchEvent tampered (#14665)
Co-authored-by: Colin Ihrig <cjihrig@gmail.com>
Diffstat (limited to 'runtime/js')
-rw-r--r--runtime/js/30_os.js4
1 files changed, 3 insertions, 1 deletions
diff --git a/runtime/js/30_os.js b/runtime/js/30_os.js
index e8467c268..9cc2ba5c7 100644
--- a/runtime/js/30_os.js
+++ b/runtime/js/30_os.js
@@ -8,6 +8,8 @@
SymbolFor,
} = window.__bootstrap.primordials;
+ const windowDispatchEvent = window.dispatchEvent.bind(window);
+
function loadavg() {
return core.opSync("op_loadavg");
}
@@ -51,7 +53,7 @@
if (!window[SymbolFor("isUnloadDispatched")]) {
// Invokes the `unload` hooks before exiting
// ref: https://github.com/denoland/deno/issues/3603
- window.dispatchEvent(new Event("unload"));
+ windowDispatchEvent(new Event("unload"));
}
if (exitHandler) {