From 09ea96a03241092a02e8681ad189106707408132 Mon Sep 17 00:00:00 2001 From: Thadeu Lima de Souza Cascardo Date: Wed, 12 Jun 2013 19:01:37 -0300 Subject: [PATCH] Fix bug when expanding message. If we need to expand a message while adding a field to it, we need to update the pointer we are using, and the one we are returning back. --- rnet_message.c | 1 + 1 file changed, 1 insertion(+) diff --git a/rnet_message.c b/rnet_message.c index 124fa4c..b967e04 100644 --- a/rnet_message.c +++ b/rnet_message.c @@ -67,6 +67,7 @@ static int add_field(struct rnet_message **message, char *key, int klen, if ((msg->alen - msg->len) < (klen + vlen + 3)) { if (rnet_message_expand(message, MAX(msg->len, klen + vlen + 3))) return -ENOMEM; + msg = *message; } buffer = msg->buffer + msg->len; if (klen > 0x7f || klen < 0) -- 2.20.1