aboutsummaryrefslogtreecommitdiff
path: root/src/core/loader/nso.cpp
diff options
context:
space:
mode:
authorbunnei <bunneidev@gmail.com>2018-01-07 12:44:36 -0500
committerbunnei <bunneidev@gmail.com>2018-01-07 12:44:36 -0500
commit02dba7283f314607f51a1224d4d7cdd6a8134526 (patch)
tree3bfec4069c4cb8c5225b4f612cdfd0d93eb81cb6 /src/core/loader/nso.cpp
parent1ae217c35706cc166db5fbf92799811214c4690c (diff)
nso: Always load the filepath specified by the user.
Diffstat (limited to 'src/core/loader/nso.cpp')
-rw-r--r--src/core/loader/nso.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/core/loader/nso.cpp b/src/core/loader/nso.cpp
index 0e45dadcb4..ed8ed66bc7 100644
--- a/src/core/loader/nso.cpp
+++ b/src/core/loader/nso.cpp
@@ -157,7 +157,7 @@ ResultStatus AppLoader_NSO::Load(Kernel::SharedPtr<Kernel::Process>& process) {
// Load NSO modules
VAddr next_load_addr{Memory::PROCESS_IMAGE_VADDR};
- for (const auto& module : {"rtld", "main", "sdk", "subsdk0", "subsdk1", "subsdk2", "subsdk3"}) {
+ for (const auto& module : {"rtld", "sdk", "subsdk0", "subsdk1", "subsdk2", "subsdk3"}) {
const std::string path = filepath.substr(0, filepath.find_last_of("/\\")) + "/" + module;
const VAddr load_addr = next_load_addr;
next_load_addr = LoadNso(path, load_addr);
@@ -167,6 +167,8 @@ ResultStatus AppLoader_NSO::Load(Kernel::SharedPtr<Kernel::Process>& process) {
next_load_addr = load_addr;
}
}
+ // Load "main" module
+ LoadNso(filepath, next_load_addr);
process->svc_access_mask.set();
process->address_mappings = default_address_mappings;