Loaders: Don't automatically set the current process every time we load an application.
The loaders will now just create a Kernel::Process, construct it and return it to the caller, which is responsible for setting it as the current process and configuring the global page table.
This commit is contained in:
parent
3165466b66
commit
7f48aa8d25
8 changed files with 40 additions and 37 deletions
|
@ -33,7 +33,7 @@ public:
|
|||
return IdentifyType(file);
|
||||
}
|
||||
|
||||
ResultStatus Load() override;
|
||||
ResultStatus Load(Kernel::SharedPtr<Kernel::Process>& process) override;
|
||||
|
||||
/**
|
||||
* Loads the Exheader and returns the system mode for this application.
|
||||
|
@ -62,9 +62,10 @@ public:
|
|||
private:
|
||||
/**
|
||||
* Loads .code section into memory for booting
|
||||
* @param process The newly created process
|
||||
* @return ResultStatus result of function
|
||||
*/
|
||||
ResultStatus LoadExec();
|
||||
ResultStatus LoadExec(Kernel::SharedPtr<Kernel::Process>& process);
|
||||
|
||||
/// Reads the region lockout info in the SMDH and send it to CFG service
|
||||
void ParseRegionLockoutInfo();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue