From: Richard Musiol Date: Tue, 20 Nov 2018 13:47:58 +0000 (+0100) Subject: misc/wasm: use temporary directory provided by Node.js X-Git-Tag: go1.12beta1~301 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=d7183ca40360bd5f8f1fcc199461344b6ee4de05;p=gostls13.git misc/wasm: use temporary directory provided by Node.js os.TempDir() did not return a proper directory on Windows with js/wasm, because js/wasm only uses the Unix variant of TempDir. This commit passes the temporary directory provided by Node.js to the Go runtime by adding it as a default value for the TMPDIR environment variable. It makes TempDir compatible with all platforms. Fixes #27306. Change-Id: I8b17e44cfb2ca41939ab2a4f918698fe330cb8bc Reviewed-on: https://go-review.googlesource.com/c/150437 Run-TryBot: Richard Musiol TryBot-Result: Gobot Gobot Reviewed-by: Brad Fitzpatrick --- diff --git a/misc/wasm/wasm_exec.js b/misc/wasm/wasm_exec.js index 440bba104c..83704a054f 100644 --- a/misc/wasm/wasm_exec.js +++ b/misc/wasm/wasm_exec.js @@ -442,7 +442,7 @@ const go = new Go(); go.argv = process.argv.slice(2); - go.env = process.env; + go.env = Object.assign({ TMPDIR: require("os").tmpdir() }, process.env); go.exit = process.exit; WebAssembly.instantiate(fs.readFileSync(process.argv[2]), go.importObject).then((result) => { process.on("exit", (code) => { // Node.js exits if no callback is pending