From 9e5fe6baf1dfd8ea7ba1456845a7e1f7256eeeaa Mon Sep 17 00:00:00 2001 From: John Leidegren Date: Tue, 3 Jul 2018 12:08:37 +0200 Subject: [PATCH] misc/wasm: use "self" instead of "window" in web worker contexts There is no "window" global in a web worker context. Use "self" instead. Fixes #26192 Change-Id: I6c6f3db6c3d3d9ca00a473f8c18b849bc07a0017 Reviewed-on: https://go-review.googlesource.com/122055 Run-TryBot: Richard Musiol Reviewed-by: Richard Musiol --- misc/wasm/wasm_exec.js | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/misc/wasm/wasm_exec.js b/misc/wasm/wasm_exec.js index 7246d7bc71..5790effb4a 100644 --- a/misc/wasm/wasm_exec.js +++ b/misc/wasm/wasm_exec.js @@ -27,7 +27,13 @@ global.TextEncoder = util.TextEncoder; global.TextDecoder = util.TextDecoder; } else { - window.global = window; + if (typeof window !== "undefined") { + window.global = window; + } else if (typeof self !== "undefined") { + self.global = self; + } else { + throw new Error("cannot export Go (neither window nor self is defined)"); + } let outputBuf = ""; global.fs = { -- 2.50.0