1
0
Fork 0

Kernel: Removed HandleTable::GetWaitObject

This isn't necessary anymore since plain Get works correctly for
WaitObjects.
This commit is contained in:
Yuri Kunde Schlesner 2017-05-29 15:10:06 -07:00
parent b17754f998
commit 9453223075
2 changed files with 2 additions and 11 deletions

View File

@ -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();

View File

@ -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;