From dba8433723f1cb5dbfc7e09fde73219aba646f60 Mon Sep 17 00:00:00 2001 From: oni-link Date: Sat, 8 Nov 2014 04:03:04 +0100 Subject: Try to fix problem found in the Travis Ci build. An uv_pipe_t handle for a WStream could be left open for a particular code path. Patch by tarruda. --- src/nvim/os/wstream.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/nvim/os/wstream.c b/src/nvim/os/wstream.c index a1f3612418..6a650ce775 100644 --- a/src/nvim/os/wstream.c +++ b/src/nvim/os/wstream.c @@ -230,7 +230,11 @@ static void write_cb(uv_write_t *req, int status) if (data->wstream->freed && data->wstream->pending_reqs == 0) { // Last pending write, free the wstream; - free(data->wstream); + if (data->wstream->free_handle) { + uv_close((uv_handle_t *)data->wstream->stream, close_cb); + } else { + free(data->wstream); + } } kmp_free(WRequestPool, wrequest_pool, data); -- cgit