diff options
author | german77 <juangerman-13@hotmail.com> | 2024-01-29 01:26:40 +0100 |
---|---|---|
committer | german77 <juangerman-13@hotmail.com> | 2024-01-29 01:27:25 +0100 |
commit | 87e26de0fca682e48c21edd98c7636e797f8b2f2 (patch) | |
tree | f5e059ccd56edfaee3d60fffcff7584f7f1c0d80 | |
parent | service: hid: Fully implement touch resource (diff) | |
download | yuzu-87e26de0fca682e48c21edd98c7636e797f8b2f2.tar yuzu-87e26de0fca682e48c21edd98c7636e797f8b2f2.tar.gz yuzu-87e26de0fca682e48c21edd98c7636e797f8b2f2.tar.bz2 yuzu-87e26de0fca682e48c21edd98c7636e797f8b2f2.tar.lz yuzu-87e26de0fca682e48c21edd98c7636e797f8b2f2.tar.xz yuzu-87e26de0fca682e48c21edd98c7636e797f8b2f2.tar.zst yuzu-87e26de0fca682e48c21edd98c7636e797f8b2f2.zip |
-rw-r--r-- | src/hid_core/resources/applet_resource.cpp | 6 | ||||
-rw-r--r-- | src/hid_core/resources/npad/npad_resource.cpp | 6 |
2 files changed, 12 insertions, 0 deletions
diff --git a/src/hid_core/resources/applet_resource.cpp b/src/hid_core/resources/applet_resource.cpp index db4134037..243beb1c7 100644 --- a/src/hid_core/resources/applet_resource.cpp +++ b/src/hid_core/resources/applet_resource.cpp @@ -118,6 +118,12 @@ void AppletResource::UnregisterAppletResourceUserId(u64 aruid) { data[index].aruid = 0; 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) { diff --git a/src/hid_core/resources/npad/npad_resource.cpp b/src/hid_core/resources/npad/npad_resource.cpp index ea9fc14ed..8dd86b58e 100644 --- a/src/hid_core/resources/npad/npad_resource.cpp +++ b/src/hid_core/resources/npad/npad_resource.cpp @@ -72,6 +72,12 @@ void NPadResource::UnregisterAppletResourceUserId(u64 aruid) { state[aruid_index] = {}; 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) { |