diff options
| author | Pierre Bourdon <delroth@gmail.com> | 2016-05-29 17:55:34 +0200 |
|---|---|---|
| committer | Pierre Bourdon <delroth@gmail.com> | 2016-05-29 18:26:04 +0200 |
| commit | c4240692b6271cd3c8a93e8fa147df67df3e32fa (patch) | |
| tree | 5326b327932d36633f8e6e9b493564ea8ecf8084 /Source/Core/DiscIO | |
| parent | 6ef7414479659c2c97c79d7244534c89dd6166e1 (diff) | |
SectorReader: Fix reading the last block of the disc.
Regression from PR #3795.
Diffstat (limited to 'Source/Core/DiscIO')
| -rw-r--r-- | Source/Core/DiscIO/Blob.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/Source/Core/DiscIO/Blob.cpp b/Source/Core/DiscIO/Blob.cpp index 19bd9faf7d..0b726c3ffb 100644 --- a/Source/Core/DiscIO/Blob.cpp +++ b/Source/Core/DiscIO/Blob.cpp @@ -141,7 +141,7 @@ u32 SectorReader::ReadChunk(u8* buffer, u64 chunk_num) // If we are reading the end of a disk, there may not be enough blocks to // read a whole chunk. We need to clamp down in that case. - u64 end_block = GetDataSize() / m_block_size; + u64 end_block = (GetDataSize() + m_block_size - 1) / m_block_size; if (end_block) cnt_blocks = static_cast<u32>(std::min<u64>(m_chunk_blocks, end_block - block_num)); |
