summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--os-posix.c9
-rw-r--r--test/lsp/go/.ted-root0
-rw-r--r--test/lsp/go/main.go0
3 files changed, 6 insertions, 3 deletions
diff --git a/os-posix.c b/os-posix.c
index f34d33b..3e32c20 100644
--- a/os-posix.c
+++ b/os-posix.c
@@ -320,9 +320,12 @@ long long process_read_stderr(Process *proc, char *data, size_t size) {
}
static void process_close_pipes(Process *proc) {
- close(proc->stdin_pipe);
- close(proc->stdout_pipe);
- close(proc->stderr_pipe);
+ if (proc->stdin_pipe)
+ close(proc->stdin_pipe);
+ if (proc->stdout_pipe)
+ close(proc->stdout_pipe);
+ if (proc->stderr_pipe)
+ close(proc->stderr_pipe);
proc->stdin_pipe = 0;
proc->stdout_pipe = 0;
proc->stderr_pipe = 0;
diff --git a/test/lsp/go/.ted-root b/test/lsp/go/.ted-root
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/lsp/go/.ted-root
diff --git a/test/lsp/go/main.go b/test/lsp/go/main.go
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test/lsp/go/main.go