os: adopt multiwait naming over waitable
This commit is contained in:
@@ -32,19 +32,19 @@ namespace ams::fatal::srv {
|
||||
|
||||
/* Global event. */
|
||||
os::SystemEventType g_fatal_dirty_event;
|
||||
os::WaitableHolderType g_fatal_dirty_waitable_holder;
|
||||
os::MultiWaitHolderType g_fatal_dirty_multi_wait_holder;
|
||||
bool g_initialized;
|
||||
|
||||
}
|
||||
|
||||
os::WaitableHolderType *GetFatalDirtyWaitableHolder() {
|
||||
os::MultiWaitHolderType *GetFatalDirtyMultiWaitHolder() {
|
||||
if (AMS_UNLIKELY(!g_initialized)) {
|
||||
os::AttachReadableHandleToSystemEvent(std::addressof(g_fatal_dirty_event), GetFatalDirtyEventReadableHandle(), true, os::EventClearMode_ManualClear);
|
||||
os::InitializeWaitableHolder(std::addressof(g_fatal_dirty_waitable_holder), std::addressof(g_fatal_dirty_event));
|
||||
os::SetWaitableHolderUserData(std::addressof(g_fatal_dirty_waitable_holder), reinterpret_cast<uintptr_t>(std::addressof(g_fatal_dirty_waitable_holder)));
|
||||
os::InitializeMultiWaitHolder(std::addressof(g_fatal_dirty_multi_wait_holder), std::addressof(g_fatal_dirty_event));
|
||||
os::SetMultiWaitHolderUserData(std::addressof(g_fatal_dirty_multi_wait_holder), reinterpret_cast<uintptr_t>(std::addressof(g_fatal_dirty_multi_wait_holder)));
|
||||
g_initialized = true;
|
||||
}
|
||||
return std::addressof(g_fatal_dirty_waitable_holder);
|
||||
return std::addressof(g_fatal_dirty_multi_wait_holder);
|
||||
}
|
||||
|
||||
void OnFatalDirtyEvent() {
|
||||
|
||||
@@ -88,7 +88,7 @@ namespace ams::fatal::srv {
|
||||
}
|
||||
};
|
||||
|
||||
os::WaitableHolderType *GetFatalDirtyWaitableHolder();
|
||||
os::MultiWaitHolderType *GetFatalDirtyMultiWaitHolder();
|
||||
void OnFatalDirtyEvent();
|
||||
const FatalConfig &GetFatalConfig();
|
||||
|
||||
|
||||
@@ -218,8 +218,8 @@ int main(int argc, char **argv)
|
||||
R_ABORT_UNLESS(g_server_manager.RegisterObjectForServer(g_private_service_object.GetShared(), PrivateServiceName, PrivateMaxSessions));
|
||||
|
||||
/* Add dirty event holder. */
|
||||
auto *dirty_event_holder = ams::fatal::srv::GetFatalDirtyWaitableHolder();
|
||||
g_server_manager.AddUserWaitableHolder(dirty_event_holder);
|
||||
auto *dirty_event_holder = ams::fatal::srv::GetFatalDirtyMultiWaitHolder();
|
||||
g_server_manager.AddUserMultiWaitHolder(dirty_event_holder);
|
||||
|
||||
/* Loop forever, servicing our services. */
|
||||
/* Because fatal has a user wait holder, we need to specify how to process manually. */
|
||||
@@ -227,7 +227,7 @@ int main(int argc, char **argv)
|
||||
if (signaled_holder == dirty_event_holder) {
|
||||
/* Dirty event holder was signaled. */
|
||||
fatal::srv::OnFatalDirtyEvent();
|
||||
g_server_manager.AddUserWaitableHolder(signaled_holder);
|
||||
g_server_manager.AddUserMultiWaitHolder(signaled_holder);
|
||||
} else {
|
||||
/* A server/session was signaled. Have the manager handle it. */
|
||||
R_ABORT_UNLESS(g_server_manager.Process(signaled_holder));
|
||||
|
||||
Reference in New Issue
Block a user