diff --git a/Core/FileLoaders/DiskCachingFileLoader.cpp b/Core/FileLoaders/DiskCachingFileLoader.cpp index ac3fdbd694..4e414297b9 100644 --- a/Core/FileLoaders/DiskCachingFileLoader.cpp +++ b/Core/FileLoaders/DiskCachingFileLoader.cpp @@ -91,7 +91,7 @@ size_t DiskCachingFileLoader::ReadAt(s64 absolutePos, size_t bytes, void *data, if (absolutePos >= filesize_) { bytes = 0; } else if (absolutePos + (s64)bytes >= filesize_) { - bytes = filesize_ - absolutePos; + bytes = (size_t)(filesize_ - absolutePos); } if (cache_ && cache_->IsValid() && (flags & Flags::HINT_UNCACHED) == 0) { @@ -226,13 +226,13 @@ size_t DiskCachingFileLoaderCache::ReadFromCache(s64 pos, size_t bytes, void *da return 0; } - s64 cacheStartPos = pos / blockSize_; - s64 cacheEndPos = (pos + bytes - 1) / blockSize_; + size_t cacheStartPos = (size_t)(pos / blockSize_); + size_t cacheEndPos = (size_t)((pos + bytes - 1) / blockSize_); size_t readSize = 0; size_t offset = (size_t)(pos - (cacheStartPos * (u64)blockSize_)); u8 *p = (u8 *)data; - for (s64 i = cacheStartPos; i <= cacheEndPos; ++i) { + for (size_t i = cacheStartPos; i <= cacheEndPos; ++i) { auto &info = index_[i]; if (info.block == INVALID_BLOCK) { return readSize; @@ -262,14 +262,14 @@ size_t DiskCachingFileLoaderCache::SaveIntoCache(FileLoader *backend, s64 pos, s return backend->ReadAt(pos, bytes, data, flags); } - s64 cacheStartPos = pos / blockSize_; - s64 cacheEndPos = (pos + bytes - 1) / blockSize_; + size_t cacheStartPos = (size_t)(pos / blockSize_); + size_t cacheEndPos = (size_t)((pos + bytes - 1) / blockSize_); size_t readSize = 0; size_t offset = (size_t)(pos - (cacheStartPos * (u64)blockSize_)); u8 *p = (u8 *)data; size_t blocksToRead = 0; - for (s64 i = cacheStartPos; i <= cacheEndPos; ++i) { + for (size_t i = cacheStartPos; i <= cacheEndPos; ++i) { auto &info = index_[i]; if (info.block != INVALID_BLOCK) { break; @@ -572,7 +572,7 @@ void DiskCachingFileLoaderCache::LoadCacheIndex() { return; } - indexCount_ = (filesize_ + blockSize_ - 1) / blockSize_; + indexCount_ = (size_t)((filesize_ + blockSize_ - 1) / blockSize_); index_.resize(indexCount_); blockIndexLookup_.resize(maxBlocks_); memset(&blockIndexLookup_[0], INVALID_INDEX, maxBlocks_ * sizeof(blockIndexLookup_[0])); @@ -646,7 +646,7 @@ void DiskCachingFileLoaderCache::CreateCacheFile(const Path &path) { return; } - indexCount_ = (filesize_ + blockSize_ - 1) / blockSize_; + indexCount_ = (size_t)((filesize_ + blockSize_ - 1) / blockSize_); index_.clear(); index_.resize(indexCount_); blockIndexLookup_.resize(maxBlocks_);