aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/nvim/os/channel.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/nvim/os/channel.c b/src/nvim/os/channel.c
index 1a2efca513..8e02478eff 100644
--- a/src/nvim/os/channel.c
+++ b/src/nvim/os/channel.c
@@ -278,6 +278,7 @@ static void job_err(RStream *rstream, void *data, bool eof)
static void parse_msgpack(RStream *rstream, void *data, bool eof)
{
Channel *channel = data;
+ channel->rpc_call_level++;
if (eof) {
char buf[256];
@@ -287,10 +288,9 @@ static void parse_msgpack(RStream *rstream, void *data, bool eof)
"closed by the client",
channel->id);
call_set_error(channel, buf);
- return;
+ goto end;
}
- channel->rpc_call_level++;
uint32_t count = rstream_available(rstream);
DLOG("Feeding the msgpack parser with %u bytes of data from RStream(%p)",
count,