From 0669c5c0b13442943d1d4d9b0ec43b3f89b33afe Mon Sep 17 00:00:00 2001 From: Thiago de Arruda Date: Tue, 16 Sep 2014 14:17:36 -0300 Subject: [PATCH] channel: Fix unpacker loop condition --- src/nvim/os/channel.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/nvim/os/channel.c b/src/nvim/os/channel.c index ad8f378dfc..1670424e4e 100644 --- a/src/nvim/os/channel.c +++ b/src/nvim/os/channel.c @@ -353,7 +353,8 @@ static void parse_msgpack(RStream *rstream, void *data, bool eof) msgpack_unpack_return result; // Deserialize everything we can. - while ((result = msgpack_unpacker_next(channel->unpacker, &unpacked))) { + while ((result = msgpack_unpacker_next(channel->unpacker, &unpacked)) == + MSGPACK_UNPACK_SUCCESS) { if (kv_size(channel->call_stack) && is_rpc_response(&unpacked.data)) { if (is_valid_rpc_response(&unpacked.data, channel)) { call_stack_pop(&unpacked.data, channel);