diff options
Diffstat (limited to 'dep/CascLib/src/CascFindFile.cpp')
-rw-r--r-- | dep/CascLib/src/CascFindFile.cpp | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/dep/CascLib/src/CascFindFile.cpp b/dep/CascLib/src/CascFindFile.cpp index 1016dffdb45..3dc8fe574fc 100644 --- a/dep/CascLib/src/CascFindFile.cpp +++ b/dep/CascLib/src/CascFindFile.cpp @@ -108,15 +108,17 @@ static bool DoStorageSearch_RootFile(TCascSearch * pSearch, PCASC_FIND_DATA pFin QUERY_KEY IndexKey; LPBYTE pbEncodingKey; DWORD EncodingIndex = 0; - DWORD LocaleFlags = 0; - DWORD FileSize = CASC_INVALID_SIZE; DWORD ByteIndex; DWORD BitMask; for(;;) { + DWORD LocaleFlags = 0; + DWORD FileDataId = CASC_INVALID_ID; + DWORD FileSize = CASC_INVALID_SIZE; + // Attempt to find (the next) file from the root entry - pbEncodingKey = RootHandler_Search(pSearch->hs->pRootHandler, pSearch, &FileSize, &LocaleFlags); + pbEncodingKey = RootHandler_Search(pSearch->hs->pRootHandler, pSearch, &FileSize, &LocaleFlags, &FileDataId); if(pbEncodingKey == NULL) return false; @@ -150,6 +152,7 @@ static bool DoStorageSearch_RootFile(TCascSearch * pSearch, PCASC_FIND_DATA pFin memcpy(pFindData->EncodingKey, pEncodingEntry->EncodingKey, MD5_HASH_SIZE); pFindData->szPlainName = (char *)GetPlainFileName(pFindData->szFileName); pFindData->dwLocaleFlags = LocaleFlags; + pFindData->dwFileDataId = FileDataId; pFindData->dwFileSize = FileSize; return true; } |