diff options
| author | 2018-10-25 01:10:26 -0400 | |
|---|---|---|
| committer | 2018-10-25 01:10:26 -0400 | |
| commit | c94db0e0719ad66c6d49bab29b8ed497c55a55f3 (patch) | |
| tree | 89fc126616fd143866e23dab45a3d064a6c48f87 /src/core/hle/kernel/svc.cpp | |
| parent | Merge pull request #1524 from FernandoS27/layers-fix (diff) | |
| parent | kernel/errors: Remove now-unused, unnecessary, error codes (diff) | |
| download | yuzu-c94db0e0719ad66c6d49bab29b8ed497c55a55f3.tar.gz yuzu-c94db0e0719ad66c6d49bab29b8ed497c55a55f3.tar.xz yuzu-c94db0e0719ad66c6d49bab29b8ed497c55a55f3.zip | |
Merge pull request #1577 from lioncash/err
kernel/error: Amend error return code values
Diffstat (limited to 'src/core/hle/kernel/svc.cpp')
| -rw-r--r-- | src/core/hle/kernel/svc.cpp | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/src/core/hle/kernel/svc.cpp b/src/core/hle/kernel/svc.cpp index 9a783d524..a5302d924 100644 --- a/src/core/hle/kernel/svc.cpp +++ b/src/core/hle/kernel/svc.cpp | |||
| @@ -594,16 +594,17 @@ static ResultCode SetThreadPriority(Handle handle, u32 priority) { | |||
| 594 | } | 594 | } |
| 595 | 595 | ||
| 596 | const auto* const current_process = Core::CurrentProcess(); | 596 | const auto* const current_process = Core::CurrentProcess(); |
| 597 | SharedPtr<Thread> thread = current_process->GetHandleTable().Get<Thread>(handle); | ||
| 598 | if (!thread) { | ||
| 599 | return ERR_INVALID_HANDLE; | ||
| 600 | } | ||
| 601 | 597 | ||
| 602 | // Note: The kernel uses the current process's resource limit instead of | 598 | // Note: The kernel uses the current process's resource limit instead of |
| 603 | // the one from the thread owner's resource limit. | 599 | // the one from the thread owner's resource limit. |
| 604 | const ResourceLimit& resource_limit = current_process->GetResourceLimit(); | 600 | const ResourceLimit& resource_limit = current_process->GetResourceLimit(); |
| 605 | if (resource_limit.GetMaxResourceValue(ResourceType::Priority) > priority) { | 601 | if (resource_limit.GetMaxResourceValue(ResourceType::Priority) > priority) { |
| 606 | return ERR_NOT_AUTHORIZED; | 602 | return ERR_INVALID_THREAD_PRIORITY; |
| 603 | } | ||
| 604 | |||
| 605 | SharedPtr<Thread> thread = current_process->GetHandleTable().Get<Thread>(handle); | ||
| 606 | if (!thread) { | ||
| 607 | return ERR_INVALID_HANDLE; | ||
| 607 | } | 608 | } |
| 608 | 609 | ||
| 609 | thread->SetPriority(priority); | 610 | thread->SetPriority(priority); |
| @@ -745,7 +746,7 @@ static ResultCode CreateThread(Handle* out_handle, VAddr entry_point, u64 arg, V | |||
| 745 | auto* const current_process = Core::CurrentProcess(); | 746 | auto* const current_process = Core::CurrentProcess(); |
| 746 | const ResourceLimit& resource_limit = current_process->GetResourceLimit(); | 747 | const ResourceLimit& resource_limit = current_process->GetResourceLimit(); |
| 747 | if (resource_limit.GetMaxResourceValue(ResourceType::Priority) > priority) { | 748 | if (resource_limit.GetMaxResourceValue(ResourceType::Priority) > priority) { |
| 748 | return ERR_NOT_AUTHORIZED; | 749 | return ERR_INVALID_THREAD_PRIORITY; |
| 749 | } | 750 | } |
| 750 | 751 | ||
| 751 | if (processor_id == THREADPROCESSORID_DEFAULT) { | 752 | if (processor_id == THREADPROCESSORID_DEFAULT) { |