From ddee2dff14772ade16e282ad18eda6f5054ce94e Mon Sep 17 00:00:00 2001 From: "Kevin (Kun) \"Kassimo\" Qian" Date: Mon, 5 Aug 2019 04:23:41 -0700 Subject: Provide option to delete Deno namespace in worker (#2717) --- core/shared_queue.js | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'core/shared_queue.js') diff --git a/core/shared_queue.js b/core/shared_queue.js index 75f370ce4..d7ab382d6 100644 --- a/core/shared_queue.js +++ b/core/shared_queue.js @@ -29,8 +29,12 @@ SharedQueue Binary Layout const INDEX_RECORDS = 3 + MAX_RECORDS; const HEAD_INIT = 4 * INDEX_RECORDS; + // Available on start due to bindings. const Deno = window[GLOBAL_NAMESPACE]; const core = Deno[CORE_NAMESPACE]; + // Warning: DO NOT use window.Deno after this point. + // It is possible that the Deno namespace has been deleted. + // Use the above local Deno and core variable instead. let sharedBytes; let shared32; @@ -165,7 +169,7 @@ SharedQueue Binary Layout const success = push(control); // If successful, don't use first argument of core.send. const arg0 = success ? null : control; - return window.Deno.core.send(arg0, zeroCopy); + return Deno.core.send(arg0, zeroCopy); } const denoCore = { -- cgit v1.2.3