From 9c0f0db9938f879652ddda48ff64ec87479f1ce0 Mon Sep 17 00:00:00 2001 From: unknown Date: Mon, 4 May 2015 10:23:46 +0200 Subject: + Fixed bug in defragmenting block table --- src/SBaseFileTable.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/SBaseFileTable.cpp b/src/SBaseFileTable.cpp index 9e6d4b6..d7e0702 100644 --- a/src/SBaseFileTable.cpp +++ b/src/SBaseFileTable.cpp @@ -785,11 +785,14 @@ static int BuildFileTableFromBlockTable( // Fix the pointer in the hash entry pHash->dwBlockIndex = dwNewIndex; + + // Dump the relocation entry + printf("Relocating hash entry %08X-%08X: %08X -> %08X\n", pHash->dwName1, pHash->dwName2, dwBlockIndex, dwNewIndex); } // Get the pointer to the file entry and the block entry pFileEntry = ha->pFileTable + dwNewIndex; - pBlock = pBlockTable + dwNewIndex; + pBlock = pBlockTable + dwBlockIndex; // ByteOffset is only valid if file size is not zero pFileEntry->ByteOffset = pBlock->dwFilePos; -- cgit v1.2.3