mirror of https://git.suyu.dev/suyu/suyu
Kernel: Removed HandleTable::GetWaitObject
This isn't necessary anymore since plain Get works correctly for WaitObjects.
This commit is contained in:
parent
b17754f998
commit
9453223075
|
@ -252,15 +252,6 @@ public:
|
||||||
return DynamicObjectCast<T>(GetGeneric(handle));
|
return DynamicObjectCast<T>(GetGeneric(handle));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Looks up a handle while verifying that it is an object that a thread can wait on
|
|
||||||
* @return Pointer to the looked-up object, or `nullptr` if the handle is not valid or it is
|
|
||||||
* not a waitable object.
|
|
||||||
*/
|
|
||||||
SharedPtr<WaitObject> GetWaitObject(Handle handle) const {
|
|
||||||
return DynamicObjectCast<WaitObject>(GetGeneric(handle));
|
|
||||||
}
|
|
||||||
|
|
||||||
/// Closes all handles held in this table.
|
/// Closes all handles held in this table.
|
||||||
void Clear();
|
void Clear();
|
||||||
|
|
||||||
|
|
|
@ -244,7 +244,7 @@ static ResultCode CloseHandle(Kernel::Handle handle) {
|
||||||
|
|
||||||
/// Wait for a handle to synchronize, timeout after the specified nanoseconds
|
/// Wait for a handle to synchronize, timeout after the specified nanoseconds
|
||||||
static ResultCode WaitSynchronization1(Kernel::Handle handle, s64 nano_seconds) {
|
static ResultCode WaitSynchronization1(Kernel::Handle handle, s64 nano_seconds) {
|
||||||
auto object = Kernel::g_handle_table.GetWaitObject(handle);
|
auto object = Kernel::g_handle_table.Get<Kernel::WaitObject>(handle);
|
||||||
Kernel::Thread* thread = Kernel::GetCurrentThread();
|
Kernel::Thread* thread = Kernel::GetCurrentThread();
|
||||||
|
|
||||||
if (object == nullptr)
|
if (object == nullptr)
|
||||||
|
@ -299,7 +299,7 @@ static ResultCode WaitSynchronizationN(s32* out, Kernel::Handle* handles, s32 ha
|
||||||
std::vector<ObjectPtr> objects(handle_count);
|
std::vector<ObjectPtr> objects(handle_count);
|
||||||
|
|
||||||
for (int i = 0; i < handle_count; ++i) {
|
for (int i = 0; i < handle_count; ++i) {
|
||||||
auto object = Kernel::g_handle_table.GetWaitObject(handles[i]);
|
auto object = Kernel::g_handle_table.Get<Kernel::WaitObject>(handles[i]);
|
||||||
if (object == nullptr)
|
if (object == nullptr)
|
||||||
return ERR_INVALID_HANDLE;
|
return ERR_INVALID_HANDLE;
|
||||||
objects[i] = object;
|
objects[i] = object;
|
||||||
|
|
Loading…
Reference in New Issue