|
|
|
@ -79,19 +79,6 @@ static std::vector<u8> DecompressSegment(const std::vector<u8>& compressed_data, |
|
|
|
return uncompressed_data; |
|
|
|
} |
|
|
|
|
|
|
|
static std::vector<u8> ReadSegment(FileUtil::IOFile& file, const NsoSegmentHeader& header, |
|
|
|
size_t compressed_size) { |
|
|
|
std::vector<u8> compressed_data(compressed_size); |
|
|
|
|
|
|
|
file.Seek(header.offset, SEEK_SET); |
|
|
|
if (compressed_size != file.ReadBytes(compressed_data.data(), compressed_size)) { |
|
|
|
LOG_CRITICAL(Loader, "Failed to read {} NSO LZ4 compressed bytes", compressed_size); |
|
|
|
return {}; |
|
|
|
} |
|
|
|
|
|
|
|
return DecompressSegment(compressed_data, header); |
|
|
|
} |
|
|
|
|
|
|
|
static constexpr u32 PageAlignSize(u32 size) { |
|
|
|
return (size + Memory::PAGE_MASK) & ~Memory::PAGE_MASK; |
|
|
|
} |
|
|
|
|