Browse Source
vfs: Handle failure of file reading within VfsRawCopy()
Also gets rid of an unused variable.
pull/15/merge
Lioncash
7 years ago
No known key found for this signature in database
GPG Key ID: 4E3C3CC1031BA9C7
1 changed files with
6 additions and
2 deletions
-
src/core/file_sys/vfs.cpp
|
|
|
@ -472,10 +472,14 @@ bool VfsRawCopy(const VirtualFile& src, const VirtualFile& dest, std::size_t blo |
|
|
|
std::vector<u8> temp(std::min(block_size, src->GetSize())); |
|
|
|
for (std::size_t i = 0; i < src->GetSize(); i += block_size) { |
|
|
|
const auto read = std::min(block_size, src->GetSize() - i); |
|
|
|
const auto block = src->Read(temp.data(), read, i); |
|
|
|
|
|
|
|
if (dest->Write(temp.data(), read, i) != read) |
|
|
|
if (src->Read(temp.data(), read, i) != read) { |
|
|
|
return false; |
|
|
|
} |
|
|
|
|
|
|
|
if (dest->Write(temp.data(), read, i) != read) { |
|
|
|
return false; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
return true; |
|
|
|
|