aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/event
diff options
context:
space:
mode:
authorJustin M. Keyes <justinkz@gmail.com>2025-03-24 17:38:34 +0100
committerJustin M. Keyes <justinkz@gmail.com>2025-03-24 17:38:34 +0100
commite73a3f1edc3ea9fe990a58f4269269c2d51fcff8 (patch)
treec6eb9520012246d06d6ef2f1a90e0cfc52a07726 /src/nvim/event
parent563051a53ef92349e3bfc0c94421094396a296bf (diff)
downloadrneovim-e73a3f1edc3ea9fe990a58f4269269c2d51fcff8.tar.gz
rneovim-e73a3f1edc3ea9fe990a58f4269269c2d51fcff8.tar.bz2
rneovim-e73a3f1edc3ea9fe990a58f4269269c2d51fcff8.zip
refactor(channel): redundant channel_close()
Problem: `receive_msgpack()` calls `channel_close()` just before calling `chan_close_on_err()`, even though `chan_close_on_err()` always calls `channel_close()`. Solution: Remove the redunant `channel_close()` in `receive_msgpack()`.
Diffstat (limited to 'src/nvim/event')
-rw-r--r--src/nvim/event/rstream.c1
-rw-r--r--src/nvim/event/stream.c2
-rw-r--r--src/nvim/event/wstream.c2
3 files changed, 3 insertions, 2 deletions
diff --git a/src/nvim/event/rstream.c b/src/nvim/event/rstream.c
index 6304953029..2bcc4cf6be 100644
--- a/src/nvim/event/rstream.c
+++ b/src/nvim/event/rstream.c
@@ -184,6 +184,7 @@ static void read_event(void **argv)
}
stream->s.pending_reqs--;
if (stream->s.closed && !stream->s.pending_reqs) {
+ // Last pending read; free the stream.
stream_close_handle(&stream->s, true);
}
}
diff --git a/src/nvim/event/stream.c b/src/nvim/event/stream.c
index 3e32813e1c..4237219cb7 100644
--- a/src/nvim/event/stream.c
+++ b/src/nvim/event/stream.c
@@ -120,7 +120,7 @@ void stream_may_close(Stream *stream, bool rstream)
if (!stream->pending_reqs) {
stream_close_handle(stream, rstream);
- }
+ } // Else: rstream.c:read_event() or wstream.c:write_cb() will call stream_close_handle().
}
void stream_close_handle(Stream *stream, bool rstream)
diff --git a/src/nvim/event/wstream.c b/src/nvim/event/wstream.c
index 5005c4e84f..61dc2e752e 100644
--- a/src/nvim/event/wstream.c
+++ b/src/nvim/event/wstream.c
@@ -156,7 +156,7 @@ static void write_cb(uv_write_t *req, int status)
data->stream->pending_reqs--;
if (data->stream->closed && data->stream->pending_reqs == 0) {
- // Last pending write, free the stream;
+ // Last pending write; free the stream.
stream_close_handle(data->stream, false);
}