service: hid: Restore active aruid

This commit is contained in:
german77 2024-01-28 18:26:40 -06:00
parent 575183d6dc
commit 87e26de0fc
2 changed files with 12 additions and 0 deletions

View File

@ -118,6 +118,12 @@ void AppletResource::UnregisterAppletResourceUserId(u64 aruid) {
data[index].aruid = 0; data[index].aruid = 0;
registration_list.flag[index] = RegistrationStatus::PendingDelete; registration_list.flag[index] = RegistrationStatus::PendingDelete;
for (std::size_t i = 0; i < AruidIndexMax; i++) {
if (registration_list.flag[i] == RegistrationStatus::Initialized) {
active_aruid = registration_list.aruid[i];
}
}
} }
void AppletResource::FreeAppletResourceId(u64 aruid) { void AppletResource::FreeAppletResourceId(u64 aruid) {

View File

@ -72,6 +72,12 @@ void NPadResource::UnregisterAppletResourceUserId(u64 aruid) {
state[aruid_index] = {}; state[aruid_index] = {};
registration_list.flag[aruid_index] = RegistrationStatus::PendingDelete; registration_list.flag[aruid_index] = RegistrationStatus::PendingDelete;
} }
for (std::size_t i = 0; i < AruidIndexMax; i++) {
if (registration_list.flag[i] == RegistrationStatus::Initialized) {
active_data_aruid = registration_list.aruid[i];
}
}
} }
void NPadResource::DestroyStyleSetUpdateEvents(u64 aruid) { void NPadResource::DestroyStyleSetUpdateEvents(u64 aruid) {