diff options
author | Lioncash <mathew1800@gmail.com> | 2018-11-27 00:23:12 +0100 |
---|---|---|
committer | Lioncash <mathew1800@gmail.com> | 2018-11-27 03:10:31 +0100 |
commit | 4ef2af8c98354aea8a4a3758d798c6a2b7bf9321 (patch) | |
tree | 229565ce72652a2cef9fb051d8340c371e810016 /src/core/hle/kernel/svc.cpp | |
parent | Merge pull request #1763 from ReinUsesLisp/bfi (diff) | |
download | yuzu-4ef2af8c98354aea8a4a3758d798c6a2b7bf9321.tar yuzu-4ef2af8c98354aea8a4a3758d798c6a2b7bf9321.tar.gz yuzu-4ef2af8c98354aea8a4a3758d798c6a2b7bf9321.tar.bz2 yuzu-4ef2af8c98354aea8a4a3758d798c6a2b7bf9321.tar.lz yuzu-4ef2af8c98354aea8a4a3758d798c6a2b7bf9321.tar.xz yuzu-4ef2af8c98354aea8a4a3758d798c6a2b7bf9321.tar.zst yuzu-4ef2af8c98354aea8a4a3758d798c6a2b7bf9321.zip |
Diffstat (limited to 'src/core/hle/kernel/svc.cpp')
-rw-r--r-- | src/core/hle/kernel/svc.cpp | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/src/core/hle/kernel/svc.cpp b/src/core/hle/kernel/svc.cpp index f287f7c97..4b7991c32 100644 --- a/src/core/hle/kernel/svc.cpp +++ b/src/core/hle/kernel/svc.cpp @@ -1346,6 +1346,24 @@ static ResultCode GetProcessInfo(u64* out, Handle process_handle, u32 type) { return RESULT_SUCCESS; } +static ResultCode CreateResourceLimit(Handle* out_handle) { + LOG_DEBUG(Kernel_SVC, "called"); + + auto& kernel = Core::System::GetInstance().Kernel(); + auto resource_limit = ResourceLimit::Create(kernel); + + auto* const current_process = kernel.CurrentProcess(); + ASSERT(current_process != nullptr); + + const auto handle = current_process->GetHandleTable().Create(std::move(resource_limit)); + if (handle.Failed()) { + return handle.Code(); + } + + *out_handle = *handle; + return RESULT_SUCCESS; +} + namespace { struct FunctionDef { using Func = void(); @@ -1482,7 +1500,7 @@ static const FunctionDef SVC_Table[] = { {0x7A, nullptr, "StartProcess"}, {0x7B, nullptr, "TerminateProcess"}, {0x7C, SvcWrap<GetProcessInfo>, "GetProcessInfo"}, - {0x7D, nullptr, "CreateResourceLimit"}, + {0x7D, SvcWrap<CreateResourceLimit>, "CreateResourceLimit"}, {0x7E, nullptr, "SetResourceLimitLimitValue"}, {0x7F, nullptr, "CallSecureMonitor"}, }; |