diff options
-rw-r--r-- | src/nvim/os/channel.c | 4 |
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, |