summaryrefslogtreecommitdiff
path: root/src/core/file_sys
diff options
context:
space:
mode:
authorLioncash <mathew1800@gmail.com>2018-10-24 00:01:29 -0400
committerLioncash <mathew1800@gmail.com>2018-10-24 00:01:32 -0400
commitc7c594a6b8416a68f40c7c141c58727e33c05b0a (patch)
tree518aec46ee28be5ae6ce2321e3ca9bf8f56a4e37 /src/core/file_sys
parentc6529688fc6cd8b80cf0e2a6a4bca81d9cdc48c9 (diff)
vfs: Handle failure of file reading within VfsRawCopy()
Also gets rid of an unused variable.
Diffstat (limited to 'src/core/file_sys')
-rw-r--r--src/core/file_sys/vfs.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/core/file_sys/vfs.cpp b/src/core/file_sys/vfs.cpp
index bfe50da73..3824c74e0 100644
--- a/src/core/file_sys/vfs.cpp
+++ b/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;