summaryrefslogtreecommitdiff
path: root/src/core/loader/nso.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/loader/nso.cpp')
-rw-r--r--src/core/loader/nso.cpp6
1 files changed, 2 insertions, 4 deletions
diff --git a/src/core/loader/nso.cpp b/src/core/loader/nso.cpp
index 4ae9d55dd..f7752e0e3 100644
--- a/src/core/loader/nso.cpp
+++ b/src/core/loader/nso.cpp
@@ -66,8 +66,7 @@ FileType AppLoader_NSO::IdentifyType(const FileSys::VirtualFile& file) {
66 66
67static std::vector<u8> DecompressSegment(const std::vector<u8>& compressed_data, 67static std::vector<u8> DecompressSegment(const std::vector<u8>& compressed_data,
68 const NsoSegmentHeader& header) { 68 const NsoSegmentHeader& header) {
69 std::vector<u8> uncompressed_data; 69 std::vector<u8> uncompressed_data(header.size);
70 uncompressed_data.resize(header.size);
71 const int bytes_uncompressed = LZ4_decompress_safe( 70 const int bytes_uncompressed = LZ4_decompress_safe(
72 reinterpret_cast<const char*>(compressed_data.data()), 71 reinterpret_cast<const char*>(compressed_data.data()),
73 reinterpret_cast<char*>(uncompressed_data.data()), compressed_data.size(), header.size); 72 reinterpret_cast<char*>(uncompressed_data.data()), compressed_data.size(), header.size);
@@ -80,8 +79,7 @@ static std::vector<u8> DecompressSegment(const std::vector<u8>& compressed_data,
80 79
81static std::vector<u8> ReadSegment(FileUtil::IOFile& file, const NsoSegmentHeader& header, 80static std::vector<u8> ReadSegment(FileUtil::IOFile& file, const NsoSegmentHeader& header,
82 size_t compressed_size) { 81 size_t compressed_size) {
83 std::vector<u8> compressed_data; 82 std::vector<u8> compressed_data(compressed_size);
84 compressed_data.resize(compressed_size);
85 83
86 file.Seek(header.offset, SEEK_SET); 84 file.Seek(header.offset, SEEK_SET);
87 if (compressed_size != file.ReadBytes(compressed_data.data(), compressed_size)) { 85 if (compressed_size != file.ReadBytes(compressed_data.data(), compressed_size)) {