summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/core/hle/service/filesystem/fsp_srv.cpp9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/core/hle/service/filesystem/fsp_srv.cpp b/src/core/hle/service/filesystem/fsp_srv.cpp
index 1b003bd84..e3f237c5c 100644
--- a/src/core/hle/service/filesystem/fsp_srv.cpp
+++ b/src/core/hle/service/filesystem/fsp_srv.cpp
@@ -3,6 +3,8 @@
// Refer to the license.txt file included.
#include <cinttypes>
+#include <utility>
+
#include "common/logging/log.h"
#include "common/string_util.h"
#include "core/core.h"
@@ -133,17 +135,16 @@ private:
return;
}
- std::vector<u8> data = ctx.ReadBuffer();
- std::vector<u8> actual_data(length);
+ const std::vector<u8> data = ctx.ReadBuffer();
ASSERT_MSG(
data.size() <= length,
"Attempting to write more data than requested (requested={:016X}, actual={:016X}).",
length, data.size());
- std::copy(data.begin(), data.end(), actual_data.begin());
// Write the data to the Storage backend
- auto written = backend->WriteBytes(data, offset);
+ std::vector<u8> actual_data(data.begin(), data.begin() + length);
+ const auto written = backend->WriteBytes(std::move(actual_data), offset);
ASSERT_MSG(written == length,
"Could not write all bytes to file (requested={:016X}, actual={:016X}).", length,