src/syscall/fs_js.go | 6 ++---- diff --git a/src/syscall/fs_js.go b/src/syscall/fs_js.go index c1cac97d91b25578a6c22928693f7ef519c55ff5..16d9f58b8c4a48789ea3392107f391274a43885e 100644 --- a/src/syscall/fs_js.go +++ b/src/syscall/fs_js.go @@ -495,7 +495,7 @@ err error } c := make(chan callResult, 1) - f := js.FuncOf(func(this js.Value, args []js.Value) interface{} { + jsFS.Call(name, append(args, js.FuncOf(func(this js.Value, args []js.Value) interface{} { var res callResult if len(args) >= 1 { // on Node.js 8, fs.utimes calls the callback without any arguments @@ -511,9 +511,7 @@ } c <- res return nil - }) - defer f.Release() - jsFS.Call(name, append(args, f)...) + }))...) res := <-c return res.val, res.err }