summaryrefslogtreecommitdiff
path: root/c
diff options
context:
space:
mode:
Diffstat (limited to 'c')
-rw-r--r--c/unpack.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/c/unpack.c b/c/unpack.c
index f1b3bb1..08fd6cb 100644
--- a/c/unpack.c
+++ b/c/unpack.c
@@ -283,6 +283,8 @@ bool msgpack_unpacker_expand_buffer(msgpack_unpacker* mpac, size_t size)
init_count(tmp);
+ memcpy(tmp+COUNTER_SIZE, mpac->buffer+mpac->off, not_parsed);
+
if(CTX_REFERENCED(mpac)) {
if(!msgpack_zone_push_finalizer(mpac->z, decl_count, mpac->buffer)) {
free(tmp);
@@ -293,8 +295,6 @@ bool msgpack_unpacker_expand_buffer(msgpack_unpacker* mpac, size_t size)
decl_count(mpac->buffer);
}
- memcpy(tmp+COUNTER_SIZE, mpac->buffer+mpac->off, not_parsed);
-
mpac->buffer = tmp;
mpac->used = not_parsed + COUNTER_SIZE;
mpac->free = next_size - mpac->used;