summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorGravatar bunnei2020-05-19 15:55:14 -0400
committerGravatar GitHub2020-05-19 15:55:14 -0400
commitcf4ee279c6424ada927f74fcc34e013038af7228 (patch)
tree40589b41a0d79f166d6b47c8b5e6726a2ca1a246 /src
parentMerge pull request #3665 from bunnei/device-save (diff)
parenthid: Clear keyboard states & fix logic issue (diff)
downloadyuzu-cf4ee279c6424ada927f74fcc34e013038af7228.tar.gz
yuzu-cf4ee279c6424ada927f74fcc34e013038af7228.tar.xz
yuzu-cf4ee279c6424ada927f74fcc34e013038af7228.zip
Merge pull request #3926 from ogniK5377/keyboard-states
hid: Clear keyboard states & fix logic issue
Diffstat (limited to 'src')
-rw-r--r--src/core/hle/service/hid/controllers/keyboard.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/core/hle/service/hid/controllers/keyboard.cpp b/src/core/hle/service/hid/controllers/keyboard.cpp
index 358cb9329..9a8d354ba 100644
--- a/src/core/hle/service/hid/controllers/keyboard.cpp
+++ b/src/core/hle/service/hid/controllers/keyboard.cpp
@@ -38,10 +38,11 @@ void Controller_Keyboard::OnUpdate(const Core::Timing::CoreTiming& core_timing,
38 cur_entry.sampling_number = last_entry.sampling_number + 1; 38 cur_entry.sampling_number = last_entry.sampling_number + 1;
39 cur_entry.sampling_number2 = cur_entry.sampling_number; 39 cur_entry.sampling_number2 = cur_entry.sampling_number;
40 40
41 cur_entry.key.fill(0);
42 cur_entry.modifier = 0;
43
41 for (std::size_t i = 0; i < keyboard_keys.size(); ++i) { 44 for (std::size_t i = 0; i < keyboard_keys.size(); ++i) {
42 for (std::size_t k = 0; k < KEYS_PER_BYTE; ++k) { 45 cur_entry.key[i / KEYS_PER_BYTE] |= (keyboard_keys[i]->GetStatus() << (i % KEYS_PER_BYTE));
43 cur_entry.key[i / KEYS_PER_BYTE] |= (keyboard_keys[i]->GetStatus() << k);
44 }
45 } 46 }
46 47
47 for (std::size_t i = 0; i < keyboard_mods.size(); ++i) { 48 for (std::size_t i = 0; i < keyboard_mods.size(); ++i) {