diff options
author | liamwhite <[email protected]> | 2024-01-19 09:33:16 -0500 |
---|---|---|
committer | GitHub <[email protected]> | 2024-01-19 09:33:16 -0500 |
commit | 932bd988243626a673abfffba6d9efd65e0b2a96 (patch) | |
tree | aeaf33521d3e9df37bd0ca97e474a59fe781f56b /src/hid_core | |
parent | a560b9f5a26bdc49814930a0bec91d0ad6545942 (diff) | |
parent | 9f376cd901447ad371f23ef14ce195ecc8d435f4 (diff) | |
download | yuzu-mainline-932bd988243626a673abfffba6d9efd65e0b2a96.tar.gz yuzu-mainline-932bd988243626a673abfffba6d9efd65e0b2a96.zip |
Merge pull request #12709 from german77/npad-disc
service: hid: Clear controller status when aruid is no longer used
Diffstat (limited to 'src/hid_core')
-rw-r--r-- | src/hid_core/resources/npad/npad.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/hid_core/resources/npad/npad.cpp b/src/hid_core/resources/npad/npad.cpp index 97537a2e2..de0f9cbb9 100644 --- a/src/hid_core/resources/npad/npad.cpp +++ b/src/hid_core/resources/npad/npad.cpp @@ -1232,6 +1232,13 @@ Result NPad::RegisterAppletResourceUserId(u64 aruid) { } void NPad::UnregisterAppletResourceUserId(u64 aruid) { + // TODO: Remove this once abstract pad is emulated properly + const auto aruid_index = npad_resource.GetIndexFromAruid(aruid); + for (auto& controller : controller_data[aruid_index]) { + controller.is_connected = false; + controller.shared_memory = nullptr; + } + npad_resource.UnregisterAppletResourceUserId(aruid); } |