From b4bb5e120b71438bad2c45934e10b3058a0b7ee2 Mon Sep 17 00:00:00 2001 From: Ingo Huerner Date: Thu, 23 Mar 2017 15:34:37 +0100 Subject: Fixed an issue with key-name when reusing a block and the key-name is shorter --- src/key-value-store/database/kissdb.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/key-value-store/database/kissdb.c b/src/key-value-store/database/kissdb.c index 70feeef..63088f8 100644 --- a/src/key-value-store/database/kissdb.c +++ b/src/key-value-store/database/kissdb.c @@ -2228,6 +2228,7 @@ int writeDualDataBlock(KISSDB* db, int64_t offset, int htNumber, const void* key block = (DataBlock_s*) (db->mappedDb + offset); block->delimStart = DATA_BLOCK_A_START_DELIMITER; + memset(block->key, 0, db->keySize); memcpy(block->key,key, klen); block->valSize = valueSize; memcpy(block->value,value, block->valSize); @@ -2241,6 +2242,7 @@ int writeDualDataBlock(KISSDB* db, int64_t offset, int htNumber, const void* key backupBlock = (DataBlock_s*) ((char*) block + sizeof(DataBlock_s)); backupBlock->delimStart = DATA_BLOCK_B_START_DELIMITER; backupBlock->crc = crc; + memset(backupBlock->key, 0, db->keySize); memcpy(backupBlock->key,key, klen); backupBlock->valSize = valueSize; memcpy(backupBlock->value,value, backupBlock->valSize); -- cgit v1.2.1