hashindex_compact: use memmove for possibly overlapping copy

This commit is contained in:
Marian Beermann 2017-06-09 11:21:50 +02:00
parent a75bfae2cf
commit 1d5d50463c
1 changed files with 2 additions and 1 deletions

View File

@ -650,7 +650,8 @@ hashindex_compact(HashIndex *index)
begin_used_idx = idx;
if(!empty_slot_count) {
memcpy(BUCKET_ADDR(index, compact_tail_idx), BUCKET_ADDR(index, idx), index->bucket_size);
/* In case idx==compact_tail_idx, the areas overlap */
memmove(BUCKET_ADDR(index, compact_tail_idx), BUCKET_ADDR(index, idx), index->bucket_size);
idx++;
compact_tail_idx++;
continue;