summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/core/loader/ncch.cpp12
1 files changed, 3 insertions, 9 deletions
diff --git a/src/core/loader/ncch.cpp b/src/core/loader/ncch.cpp
index a01411e11..23864d262 100644
--- a/src/core/loader/ncch.cpp
+++ b/src/core/loader/ncch.cpp
@@ -312,20 +312,14 @@ bool Load_NCCH(std::string& filename, std::string* error_string) {
// Load compressed executable...
if (i == 0 && is_compressed) {
- u32 decompressed_size = LZSS_GetDecompressedSize(buffer,
+ u32 decompressed_size = LZSS_GetDecompressedSize(buffer,
exefs_header.section[i].size);
- u8* decompressed_buffer = new u8[decompressed_size];
- if (!LZSS_Decompress(buffer, exefs_header.section[i].size, decompressed_buffer,
+ if (!LZSS_Decompress(buffer, exefs_header.section[i].size,
+ Memory::GetPointer(exheader_header.codeset_info.text.address),
decompressed_size, error_string)) {
return false;
}
- // Load .code section into memory...
- LoadBuffer(exheader_header.codeset_info.text.address, decompressed_buffer,
- decompressed_size);
-
- delete[] decompressed_buffer;
-
// Load uncompressed executable...
} else {
// Load .code section into memory...