hle_ipc: Eliminate core memory globals

We can just pass the required instances into the constructor of the
request, eliminating all usages of the global system accessor.
This commit is contained in:
Lioncash
2020-05-03 12:41:30 -04:00
parent 3cfa7a89e0
commit 0ec07e8763
3 changed files with 16 additions and 10 deletions

View File

@ -19,6 +19,10 @@
union ResultCode;
namespace Core::Memory {
class Memory;
}
namespace Service {
class ServiceFrameworkBase;
}
@ -28,6 +32,7 @@ namespace Kernel {
class Domain;
class HandleTable;
class HLERequestContext;
class KernelCore;
class Process;
class ServerSession;
class Thread;
@ -98,7 +103,8 @@ protected:
*/
class HLERequestContext {
public:
explicit HLERequestContext(std::shared_ptr<ServerSession> session,
explicit HLERequestContext(KernelCore& kernel, Core::Memory::Memory& memory,
std::shared_ptr<ServerSession> session,
std::shared_ptr<Thread> thread);
~HLERequestContext();
@ -305,6 +311,9 @@ private:
std::vector<std::shared_ptr<SessionRequestHandler>> domain_request_handlers;
bool is_thread_waiting{};
KernelCore& kernel;
Core::Memory::Memory& memory;
};
} // namespace Kernel