Explorar o código

loader: elf: Fix process initialization using ProgramMetadata default.

bunnei %!s(int64=6) %!d(string=hai) anos
pai
achega
68039addbc
Modificáronse 1 ficheiros con 5 adicións e 0 borrados
  1. 5 0
      src/core/loader/elf.cpp

+ 5 - 0
src/core/loader/elf.cpp

@@ -398,6 +398,11 @@ AppLoader_ELF::LoadResult AppLoader_ELF::Load(Kernel::Process& process) {
     Kernel::CodeSet codeset = elf_reader.LoadInto(base_address);
     const VAddr entry_point = codeset.entrypoint;
 
+    // Setup the process code layout
+    if (process.LoadFromMetadata(FileSys::ProgramMetadata::GetDefault(), buffer.size()).IsError()) {
+        return {ResultStatus::ErrorNotInitialized, {}};
+    }
+
     process.LoadModule(std::move(codeset), entry_point);
 
     is_loaded = true;